zoukankan      html  css  js  c++  java
  • 在类里面写代码,代替xml文件

        就是这个,以前还真没有做过,这不,这次就见识过了。然后希望给自己一份记忆,给你们一份快捷而已。。。

        /**
         * 代码中设置一般selector
         * 
         * @param context
         * @param idNormal
         * @param idSelected
         * @param idFocused
         * @param idUnable
         * @return
         */
        public static StateListDrawable newSelector(Context context,
                Drawable idNormal, Drawable idSelected, Drawable idFocused,
                Drawable idUnable) {
    
            StateListDrawable bg = new StateListDrawable();
            // View.PRESSED_ENABLED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_selected,
                    android.R.attr.state_enabled }, idSelected);
            // View.ENABLED_FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_enabled,
                    android.R.attr.state_focused }, idFocused);
            // View.ENABLED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_enabled }, idNormal);
            // View.FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_focused }, idFocused);
            // View.WINDOW_FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_window_focused }, idUnable);
            // View.EMPTY_STATE_SET
            bg.addState(new int[] {}, idNormal);
    
            return bg;
        }
    
       
    
        /**
         * 代码中设置按钮selector
         * 
         * @param context
         * @param idNormal
         * @param idPressed
         * @param idFocused
         * @param idUnable
         * @return
         */
        public static StateListDrawable newBtnSelector(Context context,
                Drawable idNormal, Drawable idPressed, Drawable idFocused,
                Drawable idUnable) {
    
            StateListDrawable bg = new StateListDrawable();
            // View.PRESSED_ENABLED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_pressed,
                    android.R.attr.state_enabled }, idPressed);
            // View.ENABLED_FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_enabled,
                    android.R.attr.state_focused }, idFocused);
            // View.ENABLED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_enabled }, idNormal);
            // View.FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_focused }, idFocused);
            // View.WINDOW_FOCUSED_STATE_SET
            bg.addState(new int[] { android.R.attr.state_window_focused }, idUnable);
            // View.EMPTY_STATE_SET
            bg.addState(new int[] {}, idNormal);
    
            return bg;
        }

     okay,呵呵,我觉得肯定还有更好的方法,所以,就献丑了!

    一切只是为了充实自己!!stay hungry and stay foolish!!
  • 相关阅读:
    操作系统——生产者消费者
    flutter如何搭建android环境
    小程序uni-app图片预览uni.previewImage会触发onshow这个生命周期
    小程序 uni-app动态更改标题
    小程序uni-app处理input框将页面往上推动的解决办法
    去除小程序scroll-view产生的横向滚动条
    小程序生命周期详解
    h5移动端像素适配 postcss-pxtorem和amfe-flexible
    vue平铺日历组件
    组合数
  • 原文地址:https://www.cnblogs.com/Catherine-Brain/p/3726132.html
Copyright © 2011-2022 走看看