我已经阅读了很多关于设置基于密度的布局的帖子,但没有一个符合这里的标准。
我想根据横向相同屏幕尺寸平板电脑设备的不同DPI值,设置SO post中显示的最高时间轴和最低时间轴。
请参阅链接中的图表。时间轴是位图顶部的1 2 3 4 ..数字。由于其较高的dpi,它们在平板2的左侧宽度对齐。
片剂1:160 DPI 7英寸片剂。
片剂2:216 DPI 7英寸片剂。
Tablet 1
和Tablet 2
的布局文件位于layout-large-land
下。
这导致更高密度设备(平板电脑2)的时间线更短。
我通过以下方式调整了平板电脑2的密度:
int screenInches = getScreenDimentions();
if(screenInches < 8)
{
DisplayMetrics dm = new DisplayMetrics();
getActivity().getWindowManager().getDefaultDisplay().getMetrics(dm);
// Display device dpi value of Y in pixels
int screenDPIy = (int)dm.ydpi;
if(screenDPIy > 180)
{
//setting the margins for top and bottom timelines pro-grammatically.
}
但是这个基于代码的想法来设置时间轴的边距似乎不合适。
这样做的标准方法是什么?哪种文件夹/布局被认为适合于获得与此类场景无关的密度布局?
是否可以设置layout-tvdpi-land
和layout-mdpi-land
之类的布局
对于上述不同密度的设备?
更新
我的布局xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/chartmain"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:gravity="center_horizontal|center_vertical"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/relative"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginLeft="5dp" >
<android.support.v4.view.ViewPager
android:id="@+id/HView"
android:layout_width="560dp"
android:layout_height="255dp"
android:layout_centerHorizontal="true"
android:layout_marginLeft="160sp"
android:layout_marginTop="110sp"
android:layout_marginBottom="80sp">
</android.support.v4.view.ViewPager>
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="18dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="1"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="40dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="2"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="62dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="3"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="84dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="4"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="109dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="5"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="132dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="6"
android:textColor="#000000" />
<TextView
android:id="@+id/topLtTv7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="155dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="7"
android:textColor="#000000" />
<TextView
android:id="@+id/topLtTv8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="177dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="8"
android:textColor="#000000" />
<TextView
android:id="@+id/topLtTv9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="200dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="9"
android:textColor="#000000" />
<TextView
android:id="@+id/topLtTv10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="217dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="10"
android:textColor="#000000" />
<TextView
android:id="@+id/topLtTv11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="242dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="11"
android:textColor="#000000" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="266dp"
android:layout_marginTop="90dp"
android:textSize="12sp"
android:text="Noon"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="296dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="1"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="315dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="2"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="337dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="3"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="359dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="4"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="382dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="5"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="404dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="6"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="428dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="7"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="450dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="8"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="472dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="9"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="490dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="10"
android:textColor="#000000" />
<TextView
android:id="@+id/topRtTv11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="515dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="11"
android:textColor="#000000" />
<TextView
android:id="@+id/totalHoursTop"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/HView"
android:layout_marginLeft="550dp"
android:layout_marginTop="90dp"
android:textSize="14sp"
android:text="Total Hours"
android:textColor="#000000" />
<RelativeLayout/>
</LinearLayout>
</LinearLayout>