Skip to content

Releases: android-notes/SwissArmyKnife

3.0.1-alpha1

18 Jul 13:27
Compare
Choose a tag to compare

支持任意根view的window

2.1.0-alpha4

09 Jul 09:49
Compare
Choose a tag to compare
2.1.0-alpha4 Pre-release
Pre-release
no message

2.1.0-alpha3

09 Jul 10:12
Compare
Choose a tag to compare
2.1.0-alpha3 Pre-release
Pre-release
no message

2.1.0-alpha2

09 Jul 09:55
Compare
Choose a tag to compare
2.1.0-alpha2 Pre-release
Pre-release
alpha1

compile 'com.wanjian:sak:2.0.2'

23 May 11:10
57bda40
Compare
Choose a tag to compare

compile 'com.wanjian:sak:2.0.0'

22 Mar 04:50
5191ea7
Compare
Choose a tag to compare

compile 'com.wanjian:sak:0.3.1'

07 Feb 14:33
Compare
Choose a tag to compare
Merge branch 'master' of https://github.com/android-notes/SwissArmyKnife

compile 'com.wanjian:sak-autopilot:0.0.2'

07 Feb 14:35
Compare
Choose a tag to compare

compile 'com.wanjian:sak:0.1.2.8'

07 Apr 07:22
Compare
Choose a tag to compare

更新日志

  • compile 'com.wanjian:sak:0.1.2.8' (测试版)2017-4-1
    • 自动刷新
    • 关闭功能 SAK.unInstall(application)

Ver2Beta

10 Mar 12:58
Compare
Choose a tag to compare

第二个版本测试版 已提交到master 和 ver2分支,具体更新详见 README.md

更新日志

  • compile 'com.wanjian:sak:0.1.2.4' (测试版)2017-3-10
    • 新增view渲染性能,页面渲染性能
    • 新增单位转换功能,可以控制所有长度的单位
    • 新增view类型功能
    • 新增自定义扩展功能,参考最后的 自定义功能
    • 修复取色器等无法关闭的bug
    • 修复可能存在的内存泄露
    • 修复布局树缩放时的bug

自定义功能

        Config config = new Config.Build(this)
                .viewFilter(new ViewFilter() {
                    @Override
                    public boolean apply(View view) {
                        if (view instanceof ImageView) {
                            return true;
                        }
                        if (view instanceof LinearLayout) {
                            return true;
                        }
                        return false;
                    }
                })
                .addLayerView(new TakeColorView(this))
                .addLayer(new InfoLayer(this))
                .addLayer(new BorderLayer(this))
                .addLayer(new BitmapWidthHeightLayer(this))
                .addLayer(new ViewClassLayer(this))
                .addSizeConverter(new SizeConverter() {
                    @Override
                    public String desc() {
                        return "my converter";
                    }

                    @Override
                    public Size convert(Context context, float length) {
                        return Size.obtain().setLength(length / 2).setUnit("myU");
                    }
                })
                .build();
        SAK.init(this, config);

可以按照如上所示定义自己的ViewFilter,决定要显示哪种view,比如只显示ImageView子类和LinearLayout子类,若想要显示所有可见的view,则直接返回
view.getVisibility()==View.VISIBLE即可。

也可以添加自定义的view和图层,单位转换等。自定义的view要继承自AbsLayerView,自定义图层要继承自AbsLayerLayerAdapterLayerTxtAdapter,区别在于LayerAdapter 的子类可以通过功能界面的层级滚轮进行控制,LayerTxtAdapter 继承自LayerAdapter ,提供了绘制文本的功能。

可以添加多个单位转换SizeConverter,默认提供了原始数值SizeConverter,PX2DP SizeConverter,PX2SP SizeConverter,子定义的SizeConverter需要继承自SizeConverter ,并重写相关方法即可。

然后参考上述初始化SAK即可。

目前SAK提供的Layer如下,默认初始化(SAK.init(Application))会包含如下所有的Layer,通过Config初始化时不会包含任何Layer,可以根据需要添加如下Layer
中的若干个,也可以添加自定义的Layer

  • BackgroundColorLayer
  • BitmapWidthHeightLayer
  • BorderLayer
  • ForceBitmapWidthHeightLayer
  • InfoLayer
  • MarginLayer
  • PaddingLayer
  • PageDrawPerformanceLayer
  • TextColorLayer
  • TextSizeLayer
  • ViewClassLayer
  • ViewDrawPerformanceLayer
  • WidthHeightLayer