Android初体验(五)activity相关

  1. 跳转到另一个activity
  2. 非activity的类使用findViewById方法
  3. 返回到上一个activity
  4. actionbar上添加一个按钮

跳转到另一个activity

1
2
Intent intent = new Intent(MainActivity.this,SortingActivity.class);
startActivity(intent);

MainActivity:当前activuty,SortingActivity:需跳转activity。

非activity的类使用findViewById方法

对于非activity类需要传入相应的activity参数。

1
2
3
public void test(Activity context){
TextView textView = context.findViewById(R.id.tv);
}

返回到上一个activity

首先,在manifests文件中使用以下代码声明当前activity的父activity

1
<activity android:name=".InsertionActivity" android:parentActivityName=".MainActivity"/>

然后重写onOptionsItemSelected方法,在itemhome时调用finish方法。

1
2
3
4
5
6
7
8
9
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
}
return super.onOptionsItemSelected(item);
}

actionbar上添加一个按钮

res目录下新建一个menu目录,在该目录中新建菜单文件

1
2
3
4
5
6
7
8
9
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:id="@+id/help"
android:title="帮助"
android:icon="@drawable/icon_help"
app:showAsAction="always">
</item>
</menu>

在需要使用的activity中加载菜单项

1
2
3
4
5
6
@Override
public boolean onCreateOptionsMenu(Menu menu) {//加载actionbar自定义菜单项
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return super.onCreateOptionsMenu(menu);
}

为按钮绑定事件响应

1
2
3
4
5
6
7
8
9
@Override
public boolean onOptionsItemSelected(MenuItem item) {//actionbar点击响应
switch (item.getItemId()) {
case R.id.help://help按钮
//do something here
return true;
}
return super.onOptionsItemSelected(item);
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com

文章标题:Android初体验(五)activity相关

本文作者:子非鱼

发布时间:2018-12-01, 19:28:23

最后更新:2018-12-09, 11:07:11

原始链接:https://Wangsr.cn/2018/12/01/2018-2018-12-01-Android初体验-五-activity与actionbar/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏