记录一些项目中遇到的问题

2018-4-10

在Adapter中启动Activity的时候报了异常,代码是这样的

MyApplication.getInstance().startActivity(MyApplication.getContext(),MainActivity.class);

结果报了如下异常

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  
context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?

查阅资料后发现Activity重写了Context的startActivity方法,为启动的Activity分配了Task,非Activity启动时没有给分配任务栈的,所以需要指定一下Flag

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

确实可以解决问题,但是考虑到它会干扰事件和历史堆栈的正常流动,所以选择在Adapter的构造中传递Activity对象实现该操作

public ListviewAdapter(Activity activity){
        mActivity = activity;
}
mActivity.startActivity(new Intent(mActivity, MainActivity.class);

完美解决问题

 

 

2018-5-22

模拟器无法启动问题

打开的时候,闪一下就没有了,提示

Emulator: Could not launch 'X:\XXX\sdk\emulator/qemu/windows-x86_64/qemu-system-i386.exe': No such file or directory

解决

tool ->  android->sdk manger->sdk-tools->android emulator  点击apply

参照自博客

 

2018-5-30

vivo 8.1调用系统相机拍照,拍完后点击确定无反应,无法回退到APP,其他8.0手机没问题,返回的是URI

android 8.0检测更新,下载apk后跳转到安装界面提示安装包解析错误,8.0以下没问题

 

 

2018-6-8

项目使用到popupwindow,自定义了一个类似微信右上角那样的弹窗,在华为7.0上没有问题,在小米4.4.4上出现了问题, 显示出来之后,页面想死机了一样,哪里都不能点,返回键也不管用,经查找之后才发现,需要给popupwindow的根view设置setBackgroundDrawable();因为样式已经定义好,所以直接传入一个透明的ColorDrawable,解决了该问题,参考自博客

 

2018-11-14

软件盘进入activity自动弹出的问题,需求是点击EditText区域内弹出,试过强制隐藏键盘,不起作用

解决:给EditText的父布局设置如下属性即可

android:focusableInTouchMode="true"

2019-7-9

在使用gson序列化或反序列化的时候,所用的到类,包括内部类都要进行序列化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值