Android 开发过程中易出现问题的地方

Android 开发过程中易出现问题的地方

本人是初开发者,所展现的问题都是自己在项目开发过程中所遇到过的问题

一、在布局中引用View实现分割线时,导致程序崩溃。(记住此处的View要大写)

截图中的View的V必须大写,小写在编译的时候不会报错,但会导致程序的崩溃

二、在布局中直接写按钮事件的,在实现时必须是public。

下图是布局
这是布局中写单击事件
下面是实现
在实现这个点击事件的时候,必须是public,且参数为View

三、任务栈的清除(问题:如点击退出登录,会进入到登录界面,然后再点击返回会重新返回到退出登录界面)

在退出登录时,添加intent标志符,清理task栈,并新建栈

  /**
     * 退出登录
     * @param context
     */
    public static  void logout(Context context){
        Intent intent = new Intent(context, LoginActivity.class);
        //添加intent标志符,清理task栈,并新建栈
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
    
    }

四、任务栈清除后导致的activity动画错乱,我们需要重新设置activity动画,且必须在startActivity之后

 /**
     * 退出登录
     * @param context
     */
    public static  void logout(Context context){
        Intent intent = new Intent(context, LoginActivity.class);
        //添加intent标志符,清理task栈,并新建栈
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
        //重新设置activity动画,且必须在startActivity之后
        ((Activity)context).overridePendingTransition(R.anim.open_enter,R.anim.open_exit);
    }

五、RecyclerView与android.support.v7.widget.RecyclerView嵌套时,导致滑动冲突的解决办法

  //最热音乐
    listRectcler = findViewById(R.id.rv_list);
    listRectcler.setLayoutManager(new LinearLayoutManager(this));
    //禁止滑动,解决滑动冲突
    listRectcler.setNestedScrollingEnabled(false);
    newMusicListAdapter = new NewMusicListAdapter(this);
    listRectcler.setAdapter(newMusicListAdapter);

六、.在调用onActivityResult接收上一个Activity回传的值值,记得先判断data是否为null,防止上一个activity是通过手机自带返回键返回时data为null,导致程序崩溃。

public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == 2) {
        if (data!=null){  //此处是处理位置
        int type = AitContactType.ROBOT;
        if (data.getSerializableExtra("chatUser")!=null){
            aitChatUser = (ChatUser) data.getSerializableExtra("chatUser");
            EmotionInputDetector.addAitUsers(aitChatUser);
            insertAitMemberInner(aitChatUser.getUserId(), aitChatUser.getName(), type, curPos, false,mEditText);
        }

    }
    }
}

后面遇到的问题,我会持续在这里更新。未完待续。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值