我以这种方式在我的android活动的操作栏中添加了向上按钮:
的活动:
getSupportActionBar()setDisplayHomeAsUpEnabled(真);
清单:
机器人:parentActivityName = “MenuActivity” >
它工作正常,但现在我想在活动之间添加过渡效果。 这种转变很有效:
Intent intent = new Intent(getApplicationContext(),MenuActivity.class); startActivity(意向); overridePendingTransition(R.anim.slide_in_left,R.anim.slide_out_right);
但我应该把这个过渡代码放在哪里?我没有任何关于操作栏中后退按钮的监听器。
感谢建议人员
答案 0 :(得分:4)
在命令setSupportActionBar(toolbar);
之后添加它toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// your code
}
});
答案 1 :(得分:4)
操作栏中的向上按钮被视为ID为android.R.id.home
的菜单项,您可以在the docs中阅读。在那里你可以发现你可以使用以下代码处理它的点击:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
// Respond to the action bar's Up/Home button
return false;
}
return super.onOptionsItemSelected(item);
}
答案 2 :(得分:0)
如果操作栏中有后退按钮,则必须在menu.xml文件中定义。所以我们必须在java文件中添加该按钮的监听器。
这里是menu.xml的样子:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.sknandroidapps.skn.ptternlock.LockScreen">
<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"
app:showAsAction="never" />
所以,如果您想将监听器添加到action_settings
按钮,那么您必须这样做:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
//here you have to put the transiction code.
return true;
}
return super.onOptionsItemSelected(item);
}
将此应用于您的代码,并告诉我它是否有效。