代码
在某个页面中点击menu按钮,添加几个菜单项,点击相应的菜单项,能执行相应的操作
java代码如下:

package com.event;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.app.AlertDialog.Builder;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.view.WindowManager.LayoutParams;
import android.widget.Button;
import android.widget.TextView;

public class EventText1 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(LayoutParams.FLAG_FULLSCREEN, LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.main);

}


public void onClickButton(View view) {
//在这右键找onCreateOptionsMenu

}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
menu.add("menu1");
menu.add(
"menu2");

return true;
}
//在这右键onOptionsItemSelected,这段代码是使得相应的菜单选项能够相应。

@Override
public boolean onOptionsItemSelected(MenuItem item) {

if(item.getTitle().equals("menu1")){//字符串的等于
Log.v("you selected", item.getTitle().toString());
//在此添加相应的菜单,应该执行的操作
}
else if(item.getTitle().equals("menu2")){//字符串的等于
Log.v("you selected", item.getTitle().toString());
//在此添加相应的菜单,应该执行的操作
}
return super.onOptionsItemSelected(item);
}

}

上面的方法只适合在

onOptionsItemSelected里面直接用字符串进行比较,对于真机里面的,只能用字符串定义引用的方法来用字符串,如@String/...这种方法来用这个字符串,而不能直接引用的时候,
这种方法就不好使了,下面这种更好。

java代码
package com.menu.test1;

import java.text.DateFormat;
import java.util.Date;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.util.Log;
import android.view.Gravity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
import android.view.Window;
import android.view.WindowManager;
import android.widget.LinearLayout;
import android.widget.Toast;
//import android.os.IHardwareService;

public class MenuTest1 extends Activity {
/** Called when the activity is first created. */
private LinearLayout mLinearLayout;
private static final int WHITE_BRIGHT = Menu.FIRST;
private static final int GRAY_BRIGHT = WHITE_BRIGHT + 1;
private static final int BLACK_BRIGHT = GRAY_BRIGHT + 1;
private static final int WHITE_DIM = BLACK_BRIGHT + 1;
private static final int GRAY_DIM = WHITE_DIM + 1;
private static final int BLACK_DIM = GRAY_DIM + 1;

private String TAG = "MenuTest1";

// 颜色值定义,程序中并没有全部使用。
private int[] color = { R.drawable.white, R.drawable.gray,
R.drawable.black, R.drawable.blue, R.drawable.pink,
R.drawable.green, R.drawable.orange, R.drawable.yellow };

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

//设置全屏 requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags ( WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN );
//然后调用布局
setContentView(R.layout.main);
//设置屏幕的最初亮度
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.screenBrightness
= 0.3f;
getWindow().setAttributes(lp);
mLinearLayout
= (LinearLayout) findViewById(R.id.myLinearLayout1);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
menu.add(0, WHITE_BRIGHT, 0,R.string.white_increase);
menu.add(
0,GRAY_BRIGHT,1,R.string.gray_increase);
menu.add(
0,BLACK_BRIGHT,2,R.string.black_increase);
menu.add(
0,WHITE_DIM,3,R.string.white_decrease);
menu.add(
0,GRAY_DIM,4,R.string.gray_decrease);
menu.add(
0,BLACK_DIM,5,R.string.black_decrease);

return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
Log.v(TAG,
"options start...");
switch(item.getItemId()){
     //下面不包括变亮和变暗的代码!
        case WHITE_BRIGHT:
            showMsg("白亮");
            mLinearLayout.setBackgroundResource(color[0]);
            break;
        case GRAY_BRIGHT:
            showMsg("灰亮");
            mLinearLayout.setBackgroundResource(color[1]);
            break;
        case BLACK_BRIGHT:
            showMsg("黑亮");
            mLinearLayout.setBackgroundResource(color[2]);
            break;
        case WHITE_DIM:
            showMsg("白暗");
            mLinearLayout.setBackgroundResource(color[0]);
            break;
        case GRAY_DIM:
            showMsg("灰暗");
            mLinearLayout.setBackgroundResource(color[1]);
            break;
        case BLACK_DIM:
            showMsg("黑暗");
            mLinearLayout.setBackgroundResource(color[2]);
            break;
           
      
}

return super.onOptionsItemSelected(item);
}

private void showMsg(String message) {
Toast msg
= Toast.makeText(MenuTest1.this, message, Toast.LENGTH_LONG);
msg.show();
}

}

相关文章:

  • 2021-10-11
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-08-16
  • 2022-12-23
  • 2021-06-20
  • 2021-08-12
  • 2022-12-23
  • 2021-10-04
  • 2022-12-23
相关资源
相似解决方案