我想在ActionBar中添加一个新按钮。当我单击它时,它会执行特定的操作。所以我不想要一个按下按钮后打开一个子菜单(如经典的三点菜单)。
我创建了一个新按钮,这个:
<item android:id="@+id/action_refresh"
android:icon="@drawable/refresh"
android:title="@string/refresh_string"
android:showAsAction="always"/>
并且它显示在ActionBar上,但如果我点击它,当然,它什么都不做。
如何按下它来设法获取动作?
谢谢!
答案 0 :(得分:3)
您需要override
onOptionsItemSelected
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.action_refresh:
//do your stuff
return true;
default:
return super.onOptionsItemSelected(item);
}
}
答案 1 :(得分:0)
与Homo sapiens的回答相同,但是使用了if-structure。
将此方法添加到您的Activity类:
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
if (item.getItemId() == R.id.action_refresh)
{
// do your stuff
return true;
}
else if (item.getItemId() == R.id.otherItem)
{
// do other stuff
return true;
}
// ...
else
{
return super.onOptionsItemSelected(item);
}
}