Android自动生成dimens及适配文件

在项目中创建包tools,创建自动生成demens.xml工具类GenerateDimenTool,将如下代码复制到类中

public class GenerateDimenTool {
    
    
    public static void main(String[] args) {
    
    
        StringBuilder builder = new StringBuilder();
        //添加xml开始的标签
        String xmlStart = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n <resources>\n";
        builder.append(xmlStart);
        for (int i = 0; i <= 300; i++) {
    
    
            String dimenName = "    <dimen name=\"dp" + i + "\">";
            String end = "dp</dimen>";
            builder.append(dimenName).append(i).append(end).append("\n");
        }
        //添加sp
        builder.append("\n\n\n<!--sp-->\n");
        for (int i = 1; i <= 50; i++) {
    
    
            String dimenName = "    <dimen name=\"sp" + i + "\">";
            String end = "sp</dimen>";
            builder.append(dimenName).append(i).append(end).append("\n");
        }
        //添加xml的尾标签
        builder.append("</resources>");
        String dimensFile = "./app/src/main/res/values/dimens.xml";
        PrintWriter out = null;
        try {
    
    
            out = new PrintWriter(new BufferedWriter(new FileWriter(dimensFile)));
            out.println(builder);
        } catch (IOException e) {
    
    
            e.printStackTrace();
        }
        out.close();
    }
}

点击右键或者在项目目录中右键点击GenerateDimenTool,选择Run
在这里插入图片描述
如遇以下问题
在这里插入图片描述
解决方案:在.idea文件夹下的gradle.xml中插入以下代码
在这里插入图片描述
在这里插入图片描述

全部解决完就会自动生成dimens.xml啦
在这里插入图片描述
适配所有页面可以安装一个ScreenMatch插件在这里插入图片描述
在项目中点击右键选择ScreenMatch,坐等生成适配dimens.xml吧
在这里插入图片描述
在这里插入图片描述
如果生成的values没有适配到某些机型还可以到screenMatch.properties中自定义后重新生成
在这里插入图片描述
大功告成!

猜你喜欢

转载自blog.csdn.net/jie_0754/article/details/109996591
今日推荐