Android 在布局中使用带有按钮的OnOptions ItemSelected
我试图对Android教程中关于布局更改()的内容进行个性化设置,但代码中有以下代码Android 在布局中使用带有按钮的OnOptions ItemSelected,android,android-layout,android-widget,android-button,Android,Android Layout,Android Widget,Android Button,我试图对Android教程中关于布局更改()的内容进行个性化设置,但代码中有以下代码 public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: // Navigate "up" the demo structure to the launchpad activity. // See http:/
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
// Navigate "up" the demo structure to the launchpad activity.
// See http://developer.android.com/design/patterns/navigation.html
// for more.
NavUtils.navigateUpTo(this, new Intent(this, MainActivity.class));
return true;
case R.id.action_add_item:
// Hide the "empty" view since there is now at least one item in the
// list.
findViewById(android.R.id.empty).setVisibility(View.GONE);
addItem();
return true;
}
return super.onOptionsItemSelected(item);
}
在我的情况下,菜单中没有按钮,但我会使用外部按钮。我正在尝试使用此按钮:
<Button
android:id="@+id/buttonPost"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="30dp"
android:layout_toRightOf="@+id/editTextComment"
android:text="Post"
android:onClick="add" />
但这个解决方案不起作用。有什么想法吗?
onoptions项selected
用于选项菜单
,与oncreateoptions菜单(菜单菜单)
一起使用。如果您希望此代码适用于按钮
s和按钮
id上的开关
,只需将此代码移动到您的onClick
public void add(View v) {
switch (v.getId()) {
case R.id.buttonPost:
findViewById(android.R.id.empty).setVisibility(View.GONE);
addItem();
break;
case R.id.another_button_id:
// do something else
break;
}
}
在按钮上放置一个OnClickListener
:
findViewById(R.id.buttonPost).setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// do something here
}
});
我正在尝试你的回答,但我有一个例外:。。。06-28 17:26:06.521:E/AndroidRuntime(17328):由以下原因引起:java.lang.NullPointerException 06-28 17:26:06.521:E/AndroidRuntime(17328):位于com.tmp.NewsDetailActivity.add(NewsDetailActivity.java:186)06-28 17:26:06.521:E/AndroidRuntime(17328):。。。14第186行是findViewById(android.R.id.empty).setVisibility(View.go);android.R.id.empty在哪里?您的布局中没有视图
,您使用setContentView(…)
充气的id
。您将需要向xmlok中添加任何假定的内容(按钮、编辑文本等)。我解决了删除行的问题,因为我删除了布局中的元素。我正在尝试您的Answare,但我有一个例外:。。。06-28 17:26:06.521:E/AndroidRuntime(17328):由以下原因引起:java.lang.NullPointerException 06-28 17:26:06.521:E/AndroidRuntime(17328):位于com.tmp.NewsDetailActivity.add(NewsDetailActivity.java:186)06-28 17:26:06.521:E/AndroidRuntime(17328):。。。14第186行是findViewById(android.R.id.empty).setVisibility(View.go);android.R.id.empty在哪里?您的布局是否有具有该id的视图?
findViewById(R.id.buttonPost).setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// do something here
}
});