码迷,mamicode.com
首页 > 其他好文 > 详细

屏幕适配

时间:2018-05-24 19:57:43      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:ima   except   cal   alt   src   i++   app   temp   ati   

技术分享图片

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        >
        <TextView
            android:layout_width="@dimen/x160"
            android:layout_height="wrap_content"
            android:text="姓名"
            android:background="#00ff00"
            />
        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            />
    </LinearLayout>
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="保存"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/img1"
        />
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/img2"
        />

</LinearLayout>

 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
        <TextView
            android:layout_width="@dimen/x160"
            android:layout_height="wrap_content"
            android:text="姓名"
            android:background="#00ff00"
            />
        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="保存"
        android:layout_gravity="center_horizontal"
        android:background="@drawable/img1"
        />
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/img2"
        />

</LinearLayout>

 

import java.io.File; 
import java.io.FileNotFoundException; 
import java.io.FileOutputStream; 
import java.io.PrintWriter; 
 
public class MakeXml { 
 
    private final static String rootPath = "D:\\layoutroot\\values-{0}x{1}\\"; 
 
    private final static float dw = 320f; 
    private final static float dh = 480f; 
 
    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(240, 320); 
        makeString(320, 480); 
        makeString(480,800); 
        makeString(480, 854);  
        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 < 320; i++) { 
            sb.append(WTemplate.replace("{0}", i + "").replace("{1}", 
                    change(cellw * i) + "")); 
        } 
        sb.append(WTemplate.replace("{0}", "320").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 < 480; i++) { 
            sb2.append(HTemplate.replace("{0}", i + "").replace("{1}", 
                    change(cellh * i) + "")); 
        } 
        sb2.append(HTemplate.replace("{0}", "480").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; 
    } 
}

屏幕适配

标签:ima   except   cal   alt   src   i++   app   temp   ati   

原文地址:https://www.cnblogs.com/feng8026/p/9084746.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!