我目前正在处理一个Android项目,当用户在使用对话框主题的活动上按后退按钮时,我遇到了问题。
基本上,我有一个活动,让我们称之为我的活动,第二个活动使用@android: style/Theme.Holo.Dialog称为MyDialog。
当MyDialog活动显示在屏幕上时,活动对话框在对话中按预期启动,但当用户按下返回按钮时,对话框活动按预期关闭,但启动活动即MyActive似乎结束了,我只是得到一个空白屏幕。
我没有为开始活动设置任何标志,所以我不明白它为什么会这样。下面是我用来启动对话活动的代码。
public OnItemClickListener mListView = new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View view, int position,
long id) {
String selection = ((TextView)view).getText().toString();
StringTokenizer st = new StringTokenizer(selection, "\n");
String name = st.nextToken();
String username = st.nextToken();
Intent intent = new Intent(PasswordList.this, LoginSelectionManager.class);
intent.putExtra("name", name);
intent.putExtra("username", username);
startActivity(intent);
}
};
根据请求更新下面是MyActivity的onResume方法的代码
@Override
public void onResume()
{
super.onResume();
populateListArray();
}
所有这些都是调用一个函数,该函数使用来自数据库的数据重新填充ListView数组适配器。下面是这个的代码
private void populateListArray()
{
ArrayList<Spanned> passwords = managePasswordList.getPasswordList();
if (passwords != null)
{
passwordArrayAdapter = new ArrayAdapter<Spanned>(this,
android.R.layout.simple_list_item_1, passwords);
setListAdapter(passwordArrayAdapter);
passwordArrayAdapter.setNotifyOnChange(true);
myListView.setTextFilterEnabled(true);
}
}
您需要为启动新活动的意图设置标志。这可以通过intent.setFlags(intent…)完成,其中intent是一个intent对象。有关详细信息,请查看Android文档。
将日志放在两个活动的onFinish
中,看看哪些活动实际上完成了...我怀疑对话框活动在按回时完成...
您获得空白屏幕的事实意味着您的活动尚未完成,只是列表视图为空。
所以出现的下一个问题是为什么您的密码列表在onResume
中为空。您真的需要在onResume
中设置适配器吗?请参阅将其移动到onCreate
...
我正在使用android 2.1,希望在Mapsavity上添加一个后退按钮。我在这一页上尝试了什么[在操作栏上显示后退按钮,但应用程序崩溃。我已经按照另一个论坛的建议将extends FragmentActivity替换为AppCompatActivity,但应用程序仍然崩溃。我知道这与操作栏有关,因为如果我删除它,应用程序就会工作。操作栏似乎为空。我被卡住了,已经启动了应用程序数次。下面是错误
我有一个活动,当我的应用程序首次启动时开始(只有一次)。该活动允许用户选择主题。然后当他们按下完成键时,我完成了这项活动。这会将用户引导到主活动。但是当用户按下返回按钮时,它会返回到第一次启动的活动(我使用完成()关闭的活动)。但我想要的是,应用程序应该关闭时,用户按下返回按钮从主活动(总是)。我在两个类中都重写了onBackPress。 这两个类中的onBackPressed方法如下所示: 主活
我有一个玩家活动和浮动玩家(服务),点击后退按钮后,玩家活动关闭,浮动玩家开始行动,当我点击浮动玩家时,我想回到玩家活动,但没有再次运行创建方法。 我在StackOver Flow中读到了很多解决方案,特别是使用FLAG\u ACTIVITY\u CLEAR\u TOP和FLAG\u ACTIVITY\u SINGLE\u TOP标志,或者将android:launchMode=“singleTa
这里发生的情况是,一旦按下后退按钮,活动就会重新加载,并再次按下后退按钮退出应用程序。我希望它是一次性的,即第一次 我尝试了很多方法,比如尝试onBackPressed方法,但都没有用。我想解决这个问题,当用户按下后退按钮时,他应该退出应用程序。同样的情况也发生在其他活动中,其中我有一个登录页面,一旦用户来到登录页面,如果他希望退出应用程序并按下后退按钮,那么在我的情况下,登录页面再次被重新加载,
我用这个教程来实现facebook登录等。 Facebook登录 我在这里添加了新的片段来显示朋友列表。现在,当我在新添加的片段上按下后退按钮时,它会把我带到SPLASH片段,我想要动作栏上同样的后退按钮行为。这意味着当我在我的新片段上时,它会在动作栏上显示一个后退按钮。按下后退按钮会把我带回SPLASH屏幕。
我试图用这段代码来显示我的个人档案活动: 当我点击Profile菜单项时,我可以看到我的ProfileActivity,但我的ActionBar上没有任何back按钮来返回我以前的活动。 那么,我如何显示一些后退按钮?我的代码是否正确以显示菜单中的活动?