private final static String WTemplate = "<dimen name=\"x{0}\">{1}px</dimen>\n";
private final static String HTemplate = "<dimen name=\"y{0}\">{1}px</dimen>\n";
// 手机分辨率
public static void main(String [] args){
makeString(320, 480);
makeString(480, 800);
makeString(480, 854);
makeString(540, 960);
makeString(600, 1024);
makeString(720, 1184);
makeString(720, 1196);
makeString(720, 1280);
makeString(768, 1024);
makeString(800, 1280);
makeString(1080, 1812);
makeString(1080, 1920);
makeString(1440, 2560);
}
public static void makeString(int w, int h) {
StringBuffer sb = new StringBuffer();
sb.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
sb.append("<resources>");
float cellw = w / dw;
for (int i = 1; i < dw; i++) {
sb.append(WTemplate.replace("{0}", i + "").replace("{1}", change(cellw * i) + ""));
}
sb.append(WTemplate.replace("{0}", "720").replace("{1}", w + ""));
sb.append("</resources>");
StringBuffer sb2 = new StringBuffer();
sb2.append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
sb2.append("<resources>");
float cellh = h / dh;
for (int i = 1; i < dh; i++) {
sb2.append(HTemplate.replace("{0}", i + "").replace("{1}", change(cellh * i) + ""));
}
sb2.append(HTemplate.replace("{0}", "1280").replace("{1}", h + ""));
sb2.append("</resources>");
String path = rootPath.replace("{0}", h + "").replace("{1}", w + "");
File rootFile = new File(path);
if (!rootFile.exists()) {
rootFile.mkdirs();
}
File layxFile = new File(path + "lay_x.xml");
File layyFile = new File(path + "lay_y.xml");
try {
PrintWriter pw = new PrintWriter(new FileOutputStream(layxFile));
pw.print(sb.toString());
pw.close();
pw = new PrintWriter(new FileOutputStream(layyFile));
pw.print(sb2.toString());
pw.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
public static float change(float a) {
int temp = (int) (a * 100);
return temp / 100f;
}
}
生成适配文件
------
> 将**上述工具类(MakeXml.java)**放置在任意目录下,按住**Shift+鼠标右键**,点击**在此处打开命令窗口**,
> 或者
> **Windows键 + R**,输入**cmd**,打开命令行窗口以后,再进入到MakeXml.java所在目录
>
> 我是把MakeXml.java放在了桌面
![P1](https://img-blog.csdn.net/20151218160006458)
> 输入编译指令,会生成.class文件
javac MakeXml.java
![P4](https://img-blog.csdn.net/20151218160050867)
> 在编译过程中,可能会出现如下错误
![P2](https://img-blog.csdn.net/20151218160114175)
> 右键使用文本编辑器,另存为,改下编码就行了
![P3](https://img-blog.csdn.net/20151218160144684)
> 最后一步,输入指令,生成xml文件
java MakeXml
> 如下
![P5](https://img-blog.csdn.net/20151218160223854)
> 到此,xml已经生成了,到C盘下看一下
![P6](https://img-blog.csdn.net/20151218160240829)
适配文件的使用
-------