IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> ActivityGroupActivityTabHost注意问题,vs开发android教程 -> 正文阅读

[移动开发]ActivityGroupActivityTabHost注意问题,vs开发android教程

View view = getLocalActivityManager().startActivity(

PollingManagementActivitySub.class.getSimpleName(), intent)

.getDecorView()

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

;

Holder.linearLayout.addView(view);

}

注意:当我们第一次点击TabWeidget进入Activity的时候,我们需要把第一次进入的Activity当作父Activity,然后在onCreate方法里也用这种方法跳转到我们需要的Activity中,这样方便我们在以后各个子Activity跳转的时候更容易操作…

上面的代码的一些个小注意问题:

1.1、intent.setFlags设置成国single_top,表示我们在启动这个Activity之后,在Activity没有被销毁的情况下,不会重新创建一个Activity;

1.2、view 我们无论是在子Activity中跳转还是从父Activity跳转到子Activity中,我们这里的view都是父Activity中的view。这个view被当作一个容器添加和删除各个Activity

子类中跳转Activity方法:

private void startPollingResultActivity(PollingRequestvo pollingRequestvo,

int type) {

Intent intent = new Intent(PollingManagementActivitySub.this,

PollingResultActivity.class);

Bundle bundle = new Bundle();

bundle.putSerializable(“pollingRequestvo”, pollingRequestvo);

bundle.putInt(“type”, type);

intent.putExtras(bundle);

Holder.viewSwitcher.removeAllViews();

View view = ((ActivityGroup) getParent())

.getLocalActivityManager()

.startActivity(PollingResultActivity.class.getSimpleName(),

intent).getDecorView();

Holder.viewSwitcher.addView(view);

currentActivity = false;

}

这里的view实际是我们的父Activity(ActivityGroup)中的容器。

1.3、getLocalActivityManager().startActivity()前面一个参数PollingManagementActivitySub.class也是在非常重要,我在项目开发的时候,被它坑死了 ,它可以随便设置,但是当我们需要在各个Activity跳转(跳转回来)的时候(并且不要求重新创建新的Activity的时候),这个值必须保证相同,如果要求重新创建Activity,这个值可以不相同。

3、当我们在各个子Activity之间跳转的时候,希望点击返回按钮进行不同的操作,会出现各种出乎意料的操作,我们应该监听返回按钮,再进行具体操作,当然监听返回按钮不是用onBackPress()方法,而是在父类(即ActivityGroup中)调用dispatchKeyEvent这个方法进行监听,这样无论我们在父Activity还是在子Activity中点击按键都会被分发这个按键事件,如果这个事件处理完毕返回true:

如下:

@Override

public boolean dispatchKeyEvent(KeyEvent event) {

if (event.getAction() == event.ACTION_DOWN) {

switch (event.getKeyCode()) {

case KeyEvent.KEYCODE_BACK:

String activityName = getCurrentActivity().getClass()

.getSimpleName();

if (activityName.equals(“PollingManagementActivitySub”)) {

new AlertDialog.Builder(this)

.setTitle(“注意”)

.setMessage(“确定要退出手机网管吗?”)

.setIcon(android.R.drawable.ic_menu_help)

.setPositiveButton(“确定”,

new DialogInterface.OnClickListener() {

public void onClick(

DialogInterface dialog,

int which) {

dialog.dismiss();

finish();

}

})

.setNegativeButton(“取消”,

new DialogInterface.OnClickListener() {

public void onClick(

DialogInterface dialog,

int which) {

dialog.cancel();

}

}).show();

} else if (activityName.equals(“PollingResultActivity”)) {

LinearLayout container = (LinearLayout) findViewById(R.id.viewSwitcher);

container.removeAllViews();

Intent intent = new Intent(getCurrentActivity(),

PollingManagementActivitySub.class);

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-12-06 15:23:13  更:2021-12-06 15:24:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:00:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码