RecyclerView
的项目布局,填充和边距在典型的电话屏幕 480x800 hdpi 上存在冲突。除480 * 800 hdpi以外,版式设计可完美显示普通屏幕。
三星J1 Ace DisplayMetrics值:
DisplayMetrics{density=1.5, width=480, height=800, scaledDensity=1.1850001, xdpi=217.714, ydpi=216.17}
我已经为layout-w320dp
创建了布局文件夹,并在xml
下替换了该文件夹,该文件夹在常规布局(常规移动屏幕)上运行良好。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="@+id/cardViewDashboard"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/paddingDefault"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginTop="@dimen/paddingDefault"
card_view:cardCornerRadius="0dp"
card_view:cardMaxElevation="@dimen/paddingDefault"
card_view:contentPadding="@dimen/paddingDefault">
<LinearLayout
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical"
android:padding="15dp">
<LinearLayout
android:id="@+id/circle_layout"
android:layout_width="85dp"
android:layout_height="85dp"
android:layout_centerInParent="true"
android:layout_gravity="center"
android:background="@drawable/ic_legend"
android:gravity="center">
<android.support.v7.widget.AppCompatImageView
android:id="@+id/imgViewDashboard"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_gravity="center|center_horizontal"
android:tint="@color/toolBar"
card_view:srcCompat="@drawable/ic_dashboard" />
</LinearLayout>
<TextView
android:id="@+id/txtViewDashboard"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_below="@+id/imgViewDashboard"
android:layout_centerHorizontal="true"
android:gravity="center"
android:text="@string/title_dashboard"
android:textAppearance="@style/TextAppearance"
android:textColor="@color/toolBar" />
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
布局在 480 * 800 hdpi 屏幕截图中存在填充和边距问题,也尝试过SO答案,但我没有任何想法。
任何人都知道,如何解决此问题?请分享您的想法。
答案 0 :(得分:0)
您可以在res内生成一个新的LIKE
文件夹以获得支持。
关于尺寸,请检查以下链接。那对你有帮助。 https://developer.android.com/guide/practices/screens_support.html
您可以在layout
中创建一个新的layout-large
文件夹。在此文件夹中添加XML。这样,您就可以管理它。
例如
res
您可以根据需要从Android Studio创建新的布局。 右键单击layout => New =>布局资源文件
根据您的要求进行定制并生成。