我有一个片段 ;
MyFragment myFrag = new MyFragment();
Run Code Online (Sandbox Code Playgroud)
我把bundle数据放到这个片段:
Bundle bundle = new Bundle();
bundle.putString("TEST", "test");
myFrag.setArguments(bundle);
Run Code Online (Sandbox Code Playgroud)
然后,我用这个替换旧片段并放在backstack上:
//replace old fragment
fragmentTransaction.replace(R.id.fragment_placeholder, myFrag, "MyTag");
//put on backstack
fragmentTransaction.addToBackStack(null);
//commit & get transaction ID
int transId = fragmentTransaction.commit();
Run Code Online (Sandbox Code Playgroud)
后来,我使用上面的事务ID()弹出backstacktransId:
//pop the transaction from backstack
fragmentManager.popBackStack(transId,FragmentManager.POP_BACK_STACK_INCLUSIVE);
Run Code Online (Sandbox Code Playgroud)
后来,我再次将bundle数据作为参数设置到我的fragment(myFrag):
//Got Java.lang.IllegalStateException: fragment already active
myFrag.setArguments(bundle);
Run Code Online (Sandbox Code Playgroud)
如您所见,我的上述代码异常Java.lang.IllegalStateException: fragment already active.虽然我已经从backstack弹出了它的事务,但我不明白为什么 myFrag 仍然有效.无论如何,因为我得到了例外,我认为我别无选择,只能取消激活片段,所以,我做了:
Fragment activeFragment = fragMgr.findFragmentByTag("MyTag");
fragmentTransaction.remove(activeFragment); …Run Code Online (Sandbox Code Playgroud) android android-emulator android-intent android-layout android-fragments
我有一台笔记本电脑,我主要用于Android工作室的android开发,今天突然得到这个错误信息(或它的过时版本)当我运行我的模拟器
Your GPU driver information:
GPU #1
Make: 8086
Model: Intel(R) HD Graphics Family
Device ID: 0a16
Driver version: 10.18.10.3945
GPU #2
Make: 10de
Model: NVIDIA GeForce 820M
Device ID: 1140
Driver version: 22.21.13.8476
Some users have experienced emulator stability issues with this driver version. As a result, were selecting a compatibility renderer. Please check with your manufacturer to see if there is an updated driver available.
Run Code Online (Sandbox Code Playgroud)
更新了geforce驱动程序,但没有用,试图更新英特尔但失败了,有没有办法禁用它?绕过兼容性渲染器并像以前一样工作,模拟器现在很糟糕.任何解释为什么突然发生的?
此外,我正在使用Windows 7 64位,如果这将有所帮助,几天前有更新.
我已经创建了一个Android模拟器(Android虚拟设备),但是我无法找到我在创建此模块时构建的SD卡.
如何找到SD卡及其内容以及如何将APK文件安装到AVD?
我已经将我的sdk更新到最新版本(android 4.4)并启动了模拟器,但现在似乎无法用CTRL + F11旋转屏幕,屏幕更改但所有应用程序都没有更改.我不知道这是否是一个相关的问题,但我可以看到,即使我用menùhw按钮创建了一个新的模拟器,现在所有的应用程序都有溢出按钮.
我进入MacBook Pro M1的 Android Studio 中的“SDK Manager”安装 Android Emulator,但出现此错误:
Packages to install: - Android Emulator (emulator)
Preparing "Install Android Emulator (revision: 31.3.10)".
Downloading https://dl.google.com/android/repository/emulator-darwin_aarch64-8807927.zip
This download could not be finalized from the interim state. Retrying without caching.
Downloading https://dl.google.com/android/repository/emulator-darwin_aarch64-8807927.zip
Failed packages:
- Android Emulator (emulator)
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?我已经多次尝试重新安装它,但仍然不起作用。
我一直在尝试使用android studio 2.0模拟器,但我无法在模拟器上运行我的应用程序.当我运行我的应用程序时,它显示模拟器以及以下详细信息:
Hax已启用
Hax ram_size 0x800000000
HAx正在工作和模拟器
以快速的virt模式运行.
端口5554上的控制台,
ADB在5555端口
之后它需要下一个TAB启动应用程序并显示等待设备上线之后它显示错误:等待设备时出错:等待模拟器上线300秒后超时.
到目前为止我尝试过的.
有人知道任何解决方案
提前致谢.
编辑
我还没有找到任何解决方案.我在2016年5月4日开设了新期刊,因为它是以前版本中的已知错误.如果您遇到同样的问题,请报告以下链接.
我尝试在我的htc魔法上浏览localhost.我通过usb将我的设备与eclipse连接起来.浏览http://10.0.2.2我得到一个"页面不可用.我记得,几天前它有用了
但在模拟器上我能够浏览localhost
有任何想法吗?问候
我使用新的 ARM cpu M14.1在 macOS Big Sure 中启动了 Android Studio11.0.1
安装 Rosetta 后:是的,它构建了!
但是模拟器有问题,显示我的CPU 不支持 VT-x
我使用了最新的,一个非常旧的 api25(谷歌必须在这里做一些事情)但它的速度慢得令人难以置信
如何让模拟器快速工作?
macos android hardware-acceleration android-emulator macos-big-sur
我在ListView中有一些EditText字段.当我点击其中一个EditText字段时,键盘会滑入视图(应该如此),但我点击的EditText字段会失去焦点.我已经尝试使用各种InputMethodManager方法使键盘在视图中启动(为了解决问题而不是真正解决它),但这不起作用 - 当Activity出现时键盘不在视图中.
EditText的类型是number,当键盘滑入时,它是一个数字键盘,但当它完成滑动并且EditText失去焦点时,它会变为字母键盘(这强化了EditText不再具有焦点的想法).
我的问题是这些:
1)如何选择我的EditText字段并随后滑入软键盘而不会使我的EditText失去焦点?
......失败了......
2)如何使键盘在视图中开始,以便它不必滑入(从而避免我发现这样令人反感的行为)?
我的清单包括android:windowSoftInputMode="stateAlwaysVisible",但直到我点击EditText键盘才出现.忽略'stateAlwaysVisible'属性似乎只出现在模拟器中 - 在我的配置设备上,它很荣幸,因此上面的问题2可以在设备上工作......但不在模拟器中.
感谢您的任何帮助,您可以提供!
我尝试使用以下代码来获取Android应用程序开发中的屏幕宽度和高度:
Display display = getWindowManager().getDefaultDisplay();
int screenWidth = display.getWidth();
int screenHeight = display.getHeight();
Run Code Online (Sandbox Code Playgroud)
但我得到的NullPointerException我的display,为什么呢?如何获得屏幕宽度和高度呢?
android android-widget android-emulator android-layout android-activity