max*_*ver 12 android android-actionbar
我正在为android 3+开发
在我的操作栏中,我有一个下拉列表(请参阅如何隐藏/取消隐藏Android 3上的操作栏列表?我想要的下拉列表).问题是我需要在用户选择某些内容时执行某个操作,但Android在绘制视图时调用onNavigationItemSelected()作为soons,因此实际上没有选择.
我如何检测用户是否真的按下了某些内容并且它不是来自android的假电话?
public class ListDittaListener implements OnNavigationListener{
private BaseActivity activity;
private ListDittaListener()
{
}
public ListDittaListener(BaseActivity activity)
{
this.activity = activity;
}
@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId)
{
MyApp appState = ((MyApp)this.activity.getApplicationContext());
appState.setDittaSelezionata( (int) itemId);
SharedPreferences settings = this.activity.getSharedPreferences(MyApp.PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putInt("ditta_id_selezionata", (int) itemId);
////////restart activity this.activity.recreate();
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
mlc*_*mlc 16
onNavigationItemSelected
如果您愿意,您可以轻松忽略第一个电话:
public class Whatever implements OnNavigationListener {
private boolean synthetic = true;
@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
if (synthetic) {
synthetic = false;
return true;
}
// do whatever you really wanted here
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15844 次 |
最近记录: |