onCreateOptionsMenu 方法中的变量未更新,android Java
Variable not updating in onCreateOptionsMenu method, android Java
我有一个整型变量,当共享意图被激活时它没有被更新。我错过了什么?谢谢。
整数 i1 在 class 中声明:
private int i1;
这里是onCreateOptionsMenu方法
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.pun, menu);
star = menu.findItem(R.id.action_favoritestar);
init();
MenuItem shareItem = (MenuItem) menu.findItem(R.id.menu_item_share);
shareAction = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setAction(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(intent.EXTRA_TEXT, "\"" + mLines.get(i1));
shareAction.setShareIntent(intent);
return true;
}
按下按钮时修改变量:
final Button btn1 = (Button) findViewById(R.id.next);
btn1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
star.setIcon(R.drawable.starblank);
Random r = new Random();
i1 = r.nextInt(20 - 1) + 1;
textView.setText(mLines.get(i1));
}
});
找到解决办法。共享选项菜单未更新多次。每次按下按钮后,我都会调用 invalidateOptionsMenu()
。
我有一个整型变量,当共享意图被激活时它没有被更新。我错过了什么?谢谢。
整数 i1 在 class 中声明:
private int i1;
这里是onCreateOptionsMenu方法
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.pun, menu);
star = menu.findItem(R.id.action_favoritestar);
init();
MenuItem shareItem = (MenuItem) menu.findItem(R.id.menu_item_share);
shareAction = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setAction(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(intent.EXTRA_TEXT, "\"" + mLines.get(i1));
shareAction.setShareIntent(intent);
return true;
}
按下按钮时修改变量:
final Button btn1 = (Button) findViewById(R.id.next);
btn1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
star.setIcon(R.drawable.starblank);
Random r = new Random();
i1 = r.nextInt(20 - 1) + 1;
textView.setText(mLines.get(i1));
}
});
找到解决办法。共享选项菜单未更新多次。每次按下按钮后,我都会调用 invalidateOptionsMenu()
。