冷门开发技巧

2018-02-07  本文已影响262人  清明捉鬼
linearLayout = (LinearLayout) findViewById(R.id.linearlayout);
mButtonAdd.setOnClickListener(this);
LayoutTransition transition=new LayoutTransition();
transition.getDuration(2000);
transition.setAnimator(LayoutTransition.APPEARING, AnimatorInflater.loadAnimator(getApplicationContext(), R.animator.animator_scale));
transition.setAnimator(LayoutTransition.CHANGE_APPEARING, transition.getAnimator(LayoutTransition.CHANGE_APPEARING));
transition.setAnimator(LayoutTransition.DISAPPEARING, transition.getAnimator(LayoutTransition.DISAPPEARING));
transition.setAnimator(LayoutTransition.CHANGE_DISAPPEARING,transition.getAnimator(LayoutTransition.CHANGE_DISAPPEARING));
linearLayout.setLayoutTransition(transition);
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this, R.style.oaThemeByLgp);
        String[] split = curtailName.split("¥");
        StringBuilder sb=new StringBuilder();
        for (int i = 0; i < split.length; i++) {
            sb.append(split[i]);
            if (i<split.length){
                sb.append("、");
            }
        }
        alertDialog.setMessage(sb.toString()+" 上传失败,是否继续?");
        alertDialog.setPositiveButton("否",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        manager.cancelAll();
                        return;
                    }
                });
        alertDialog.setNegativeButton("是",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int which) {
                        transmit();
                    }
                });
        AlertDialog ad = alertDialog.create();
        ad.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
        ad.setCanceledOnTouchOutside(false);//点击外面区域不会让dialog消失
        ad.show();

这一段代码是我内部邮件的开启多线程上传多文件业务,如果其中一个线程文件上传失败,会提醒用户,这个提醒就是系统的Dialog,由用户使用此Dialog决定此封邮件是否有效,如果用户选择无效,则后台不记录相关数据,并记录下上传成功的id,稍后调用后台接口清除这些冗余文件。

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile(name:'guideview-release', ext:'aar')
//    compile project(':guideview')
}
repositories {
    mavenCentral()
    flatDir{
        dirs 'libs'
    }
}
  1. TextView中我们开发时想要在 XML 中预览数据可以直接通过tools里面某些方法实现, 但是直接在 XML 中写死有时就会很尴尬,譬如从网络或者数据库获取数据有延迟, 用户就先看到了我们预设的假数据。避免尴尬可以这么干 将 android:text="看不到我,看不到我"替换为 tools:text="老板驾到"
    当然据传这里面的数据也是可以自定义的,就是Android3.0以后的 image.png
    不过我实验没成功,在输入时引用提示,不知道是编译器原因还是什么,需要了解的可以自行百度。
  2. ListView中有时候需要看到具体布局效果,这就非常尴尬:
    可以使用tools:listitem="@layout/item_grid_bag"类似这些个属性去做预览
    这个是引用前布局:


    image.png

    引用后布局后:


    image.png
    因为我这个列表项布局就是一个框框背景图,所以预览图没毛病,并非效果问题。
各位老铁觉得还实用不妨点个赞吧
待续....
上一篇 下一篇

猜你喜欢

热点阅读