Android文本中的dp或sp
我有一个关于Android的问题,我需要你的帮助。我有以下单选按钮:Android文本中的dp或sp,android,radio-button,screen-resolution,Android,Radio Button,Screen Resolution,我有一个关于Android的问题,我需要你的帮助。我有以下单选按钮: <RadioButton android:id="@+id/r_Button_Standard" android:layout_width="95dp" android:layout_height="35dp" android:layout_weight="1" android:background="@drawable/background_selector" andro
<RadioButton
android:id="@+id/r_Button_Standard"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="@string/radioButton_standard"
android:checked="true"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.642"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintVertical_bias="0.671" />
对于屏幕上的文本,我们更喜欢sp,因为如果用户希望更改设置中的文本大小(例如:小、中、大),这些文本将根据屏幕自动缩放。但是在dp的情况下,每部手机都有不同的像素密度(例如:在4x4平方空间中,某些手机可能有4个像素,而另一些手机可能有16个像素),因此不建议使用dp。阅读本文以全面了解SP、dp和Piexel: TL;博士 SP==DP,但设备设置应用程序中字体大小的用户首选项也将应用于 假设一个用户在设置中增加了字体大小,他可能希望在你的应用程序中看到更大的字体大小,sp会处理这个问题
- 请访问ConstraintLayout.com,学习您的ConstraintLayout设计技能
- 您对线性布局重量的使用是完全错误的
- 您使用的是固定的dp大小
感谢ramtintoosi的评论。基本上,我理解我应该使用sp作为文本。但在我的例子中,容器(RadioButton)中的文本甚至Android Studio都告诉我们,在这种情况下,可以使用dp。然而,我想知道Android的“考虑调整布局以使其更加灵活”是什么意思Studio@VanessaF根据你对我的描述,这意味着让android在屏幕上调整大小和绘制视图,从而让你的宽度和高度包裹你的内容,您当前使用的是固定宽度和高度,这可能会弄乱布局。感谢ramtintoosi的评论。不幸的是,我不理解你说的话。我使用ConstrainedLayout,其中有单选按钮。单选按钮中有文本(见我贴的图片)。我在此上下文中使用dp,因为我不希望当有人放大时文本显示在RadioButton之外。@VanessaF如果我更新了答案,用户放大它的意思是什么?@VanessaF只需按照您认为正确的方式进行操作,并使您的开发更容易,我尊重这一点;)谢谢你的评论。基本上,我理解我应该使用sp作为文本。但在我的例子中,容器(RadioButton)中的文本甚至Android Studio都告诉我们,在这种情况下,可以使用dp。然而,我想知道Android Studio中的“考虑调整布局以使其更加灵活”是什么意思
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageView"
tools:ignore="ContentDescription"
android:layout_width="465dp"
android:layout_height="262dp"
android:scaleType="fitXY"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0"
app:srcCompat="@drawable/test_dish_1" />
<TextView
android:id="@+id/cocktailName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Test "
android:textColor="#000000"
android:textSize="28dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.482"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.434" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Zutaten: Zutat_1, Zutat_2, Zutat_3,\n Zutat_4, Zutat_5, Zutat_6"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.489"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/textViewA"
android:layout_width="95dp"
android:layout_height="35dp"
android:text="Option_2"
android:textColor="#000000"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.012"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.671" />
<ImageButton
android:id="@+id/commentButton"
android:layout_width="100dp"
android:layout_height="50dp"
android:background="@null"
android:contentDescription="comment_Button"
android:scaleType="fitCenter"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.799"
app:srcCompat="@mipmap/comment" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/comment_TextView"
android:textSize="18dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.025"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.729" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="95dp"
android:layout_height="35dp"
android:checked="true"
android:text="Check"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.967"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.761" />
<Button
android:id="@+id/ordering_button"
android:layout_width="163dp"
android:layout_height="72dp"
android:background="@drawable/custom_button"
android:text="Bestellen"
android:textAllCaps="false"
android:textColor="#121212"
android:textSize="25sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.867" />
<TextView
android:id="@+id/textViewS"
android:layout_width="95dp"
android:layout_height="35dp"
android:text="Option_1"
android:textColor="#000000"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.012"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.584" />
<LinearLayout
android:background="#FFD600"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:id="@+id/bottom_layout"
android:layout_width="0dp"
android:layout_height="60dp">
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_margin="4dp"
android:layout_weight="1"
android:background="@drawable/test_dish_1"
android:text="Back" />
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button2"
android:layout_weight="1"
android:text="Button2"
android:layout_width="0dp"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_weight="1"
android:text="Button3"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_weight="1"
android:text="Button1"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
</LinearLayout>
<RadioGroup
android:id="@+id/radioGroup_Size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintVertical_bias="0.583"
app:layout_constraintHorizontal_bias="0.862"
app:layout_constraintTop_toTopOf="parent">
<RadioButton
android:id="@+id/r_Button_Small"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="Klein"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.319"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintVertical_bias="0.584" />
<RadioButton
android:id="@+id/r_Button_Medium"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:checked="true"
android:text="Normal"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.583" />
<RadioButton
android:id="@+id/r_Button_Large"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="Groß"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintVertical_bias="0.584" />
</RadioGroup>
<RadioGroup
android:id="@+id/radioGroup_alcohol"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintVertical_bias="0.671"
app:layout_constraintHorizontal_bias="0.872"
app:layout_constraintTop_toTopOf="parent">
<RadioButton
android:id="@+id/r_Button_Less"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="Weniger"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.319"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.671" />
<RadioButton
android:id="@+id/r_Button_Standard"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="@string/radioButton_standard"
android:checked="true"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.642"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintVertical_bias="0.671" />
<RadioButton
android:id="@+id/r_Button_More"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:text="Mehr"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginLeft="10dp"
app:layout_constraintVertical_bias="0.671" />
</RadioGroup>
</android.support.constraint.ConstraintLayout>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/imageView"
android:layout_width="0dp"
android:layout_height="250dp"
android:scaleType="fitXY"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@drawable/test_dish_1"
tools:ignore="ContentDescription" />
<TextView
android:id="@+id/cocktailName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:text="Test "
android:textColor="#000000"
android:textSize="28dp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.482"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Zutaten: Zutat_1, Zutat_2, Zutat_3,\n Zutat_4, Zutat_5, Zutat_6"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.489"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/cocktailName" />
<TextView
android:id="@+id/textViewA"
android:layout_width="95dp"
android:layout_height="35dp"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp"
android:text="Option_2"
android:textColor="#000000"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textViewS" />
<ImageButton
android:id="@+id/commentButton"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@null"
android:contentDescription="comment_Button"
android:scaleType="fitCenter"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView2"
app:srcCompat="@mipmap/comment" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="16dp"
android:text="@string/comment_TextView"
android:textSize="18dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.025"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textViewA" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:checked="true"
android:text="Check"
app:layout_constraintBottom_toTopOf="@+id/ordering_button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/radioGroup_alcohol" />
<Button
android:id="@+id/ordering_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:background="@drawable/custom_button"
android:padding="16dp"
android:text="Bestellen"
android:textAllCaps="false"
android:textColor="#121212"
android:textSize="25sp"
app:layout_constraintBottom_toTopOf="@+id/bottom_layout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:id="@+id/textViewS"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp"
android:text="Option_1"
android:textColor="#000000"
android:textSize="22dp"
android:textStyle="bold"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/textView3" />
<LinearLayout
android:background="#FFD600"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:id="@+id/bottom_layout"
android:layout_width="0dp"
android:layout_height="60dp">
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_margin="4dp"
android:layout_weight="1"
android:background="@drawable/test_dish_1"
android:text="Back" />
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button2"
android:layout_weight="1"
android:text="Button2"
android:layout_width="0dp"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_weight="1"
android:text="Button3"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
<Button
android:layout_gravity="center_vertical"
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_weight="1"
android:text="Button1"
android:layout_margin="4dp"
android:layout_height="wrap_content"/>
</LinearLayout>
<RadioGroup
android:id="@+id/radioGroup_Size"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp"
android:layout_marginEnd="8dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="@+id/textViewS"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/textViewS"
app:layout_constraintTop_toBottomOf="@+id/textView3">
<RadioButton
android:id="@+id/r_Button_Small"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:padding="4"
android:text="Klein"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.319"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.584" />
<RadioButton
android:id="@+id/r_Button_Medium"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:checked="true"
android:padding="4dp"
android:text="Normal"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.583" />
<RadioButton
android:id="@+id/r_Button_Large"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:padding="4dp"
android:text="Groß"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.584" />
</RadioGroup>
<RadioGroup
android:id="@+id/radioGroup_alcohol"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp"
android:layout_marginEnd="8dp"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="@+id/textViewA"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/textViewA"
app:layout_constraintTop_toBottomOf="@+id/radioGroup_Size">
<RadioButton
android:id="@+id/r_Button_Less"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:padding="4dp"
android:text="Weniger"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.319"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.671" />
<RadioButton
android:id="@+id/r_Button_Standard"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:checked="true"
android:padding="4dp"
android:text="@string/radioButton_standard"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.642"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.671" />
<RadioButton
android:id="@+id/r_Button_More"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="1"
android:background="@drawable/background_selector"
android:padding="4dp"
android:text="Mehr"
android:textColor="@drawable/text_selector"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.962"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.671" />
</RadioGroup>
</android.support.constraint.ConstraintLayout>