android 启动的空白以及一些小bug

空白解决方案,
<!-- Customize your theme here. -->
<!-- 启动时页面为透明色,避免显示空白页,好像有问题,还是空白页 -->
<item name="android:windowIsTranslucent">true</item>
<!-- 这个起作用,启动时有点延时,实际就是加载了透明的背景,如微信6.3.28 -->
<item name="android:windowBackground">@android:color/transparent</item>
<!-- 设置启动背景图片,避免显示空白页,如支付宝9.9.5 -->
<!-- <item name="android:windowBackground">@drawable/splash_bg</item> -->
<!-- 隐藏标题栏 -->
<item name="android:windowNoTitle">true</item>
<!-- 隐藏状态栏 -->
<item name="android:windowFullscreen">true</item>

  • 当你遇到这个错的时候,Couldn't load HDACEngine from loader dalvik.system.PathClassLoader[dexPath=/data/app/io.agora.openlive-1.apk,libraryPath=/data/app-lib/io.agora.openlive-1]: findLibrary returned null ,解决方案就是,在build中配置,路径不正确,一般情况下是这样的sourceSets {
    main {
    jniLibs.srcDirs = [‘libs’]
    }

  • listVIew跳转到item的某个位置,需要用setSelectionFromTop,不能setSelection在scroll,容易出现空白的item,

  • 反射真的很慢,ormlite比直接使用sql慢一倍,
  • activity中runOnUiThread,当Activity的finish了。依然会执行
  • view的addOnlayoutChangeListener监听layout的回调事件
  • view的getviewTreeObserver().addOnGlobalLayoutListener监听全局的layout的事件,当然你可以直接在baseActivity监听内容,让子类实现,如下
   protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final View viewById = findViewById(Window.ID_ANDROID_CONTENT);
        ViewTreeObserver viewTreeObserver = viewById.getViewTreeObserver();
        viewTreeObserver.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
                    viewById.getViewTreeObserver().removeOnGlobalLayoutListener(this);
                } else {
                    viewById.getViewTreeObserver().removeGlobalOnLayoutListener(this);
                }
                Log.e("aaaaaa","aaaaaaaa");
                initUIlandEvent();
            }
        });
    }

    /**
     * 子activity中实现,可以实现一些监听事件,布局初始化了。
     */
    public abstract void initUIlandEvent();
  • 据说在app被卸载或者停止的时候,jni里fork出来的子线程,不会被停止,可以用于包活之类的
  • Activity的theme之类的都是给window的decorview设置的,生效面积大于activity
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值