如何在android中的主类的oncreate中调用ic_action_overflow按钮(选项菜单)onclicklistner

时间:2016-08-24 07:19:40

标签: java android android-layout android-studio

我需要在主类的oncreate中调用Onclicklistner到ic_action_overflow按钮(选项菜单按钮)....如何将onclicklistner写入该按钮..提前谢谢!

代码看起来应该......

public class MainActivity extends AppCompatActivity  {    

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    ic_action_overflow.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            //  TODO Auto-generated method stub
            //body
        }
    });
 }
 }

4 个答案:

答案 0 :(得分:1)

使用performClick方法

ic_action_overflow.performClick();

答案 1 :(得分:1)

为什么你没有使用

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.ic_action_overflow){
        //your code 
        return true;
    }
    return super.onOptionsItemSelected(item);
}

在您的活动中?

答案 2 :(得分:1)

   @Override
   public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch (keyCode) {

case KeyEvent.KEYCODE_MENU:
    // Do Sometihng
    break;

default:
    break;
}
return super.onKeyDown(keyCode, event);
   } 

你需要这样做

答案 3 :(得分:1)

确保在res

中的menu文件夹中的menu.xml中定义此属性
<item android:id="@+id/ic_action_overflow"
 android:title="ic_action_overflow"/>

然后在你的MainActivity调用onCreateOptionsmenu中显示你是否已经没有了。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu, menu);
    return true;
}

现在,最后点击ic_action_overflow

的监听器
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.ic_action_overflow:
           //Do work here
           Toast.makeText(MainActivity.this,"Click Successful",Toast.LENGTH_SHORT).show();
            break;
}
return true;
}

希望这能帮到你!!