android如何根据tablayout中的屏幕大小自动缩小imageview?

时间:2016-07-22 02:44:52

标签: android android-layout android-fragments

我将4个表行的权重设置为1.它在不同的屏幕尺寸下工作得非常好。它会自动缩小并显示所有图像并适合屏幕。

但是当我把它放在Tablayout片段中时,内容并不全部显示;正如您从屏幕截图中看到的那样。任何人都知道这个问题吗? THX。

enter image description here

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:context="com.example.template_tab.frag_two"
android:orientation="vertical">

<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img0"
        android:src="@drawable/sample_0"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img1"
        android:src="@drawable/sample_1"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img2"
        android:src="@drawable/sample_2"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img3"
        android:src="@drawable/sample_3"
        android:layout_weight="1" />
</TableRow>

<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">
    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img4"
        android:src="@drawable/sample_4"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="9dp"
        android:layout_height="wrap_content"
        android:id="@+id/img5"
        android:src="@drawable/sample_5"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img6"
        android:src="@drawable/sample_6"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/img7"
        android:src="@drawable/sample_7"
        android:layout_weight="1" />

</TableRow>

<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">
    <ImageView
        android:layout_width="9dp"
        android:layout_height="wrap_content"
        android:id="@+id/img8"
        android:src="@drawable/sample_8"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="9dp"
        android:layout_height="wrap_content"
        android:id="@+id/img9"
        android:src="@drawable/sample_9"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="9dp"
        android:layout_height="wrap_content"
        android:id="@+id/img10"
        android:src="@drawable/sample_10"
        android:layout_weight="1" />

    <ImageView
        android:layout_width="9dp"
        android:layout_height="wrap_content"
        android:id="@+id/img11"
        android:src="@drawable/sample_11"
        android:layout_weight="1" />

</TableRow>

<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1">

    <ImageView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:id="@+id/result"
        android:src="@drawable/sample_0"
        android:layout_weight="1" />

    <TextView
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:id="@+id/display_text"
        android:text="1908, 1920, 1932, 1944, 1956, 1968, 1980, 1992, 2004, 2016, 2028, 2040, 2052, 2064"
        android:layout_weight="1" />
</TableRow>
</LinearLayout>

1 个答案:

答案 0 :(得分:1)

你不需要TableRow用于你的情况,TableRow也应该在TableLayout中使用。

将父视图设置为wrap_content而不是<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.template_tab.frag_two" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal"> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img0" android:src="@drawable/sample_0" android:layout_weight="1" /> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img1" android:src="@drawable/sample_1" android:layout_weight="1" /> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img2" android:src="@drawable/sample_2" android:layout_weight="1" /> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img3" android:src="@drawable/sample_3" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal"> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img4" android:src="@drawable/sample_4" android:layout_weight="1" /> <ImageView android:layout_width="9dp" android:layout_height="wrap_content" android:id="@+id/img5" android:src="@drawable/sample_5" android:layout_weight="1" /> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img6" android:src="@drawable/sample_6" android:layout_weight="1" /> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/img7" android:src="@drawable/sample_7" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal"> <ImageView android:layout_width="9dp" android:layout_height="wrap_content" android:id="@+id/img8" android:src="@drawable/sample_8" android:layout_weight="1" /> <ImageView android:layout_width="9dp" android:layout_height="wrap_content" android:id="@+id/img9" android:src="@drawable/sample_9" android:layout_weight="1" /> <ImageView android:layout_width="9dp" android:layout_height="wrap_content" android:id="@+id/img10" android:src="@drawable/sample_10" android:layout_weight="1" /> <ImageView android:layout_width="9dp" android:layout_height="wrap_content" android:id="@+id/img11" android:src="@drawable/sample_11" android:layout_weight="1" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:orientation="horizontal"> <ImageView android:layout_width="0dp" android:layout_height="wrap_content" android:id="@+id/result" android:src="@drawable/sample_0" android:layout_weight="1" /> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:id="@+id/display_text" android:text="1908, 1920, 1932, 1944, 1956, 1968, 1980, 1992, 2004, 2016, 2028, 2040, 2052, 2064" android:layout_weight="1" /> </LinearLayout> </LinearLayout>

"name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "require": {
        "laravel/framework": "4.2.*",
        "fzaninotto/faker": "^1.6",
        "barryvdh/laravel-dompdf": "0.5.2"