我试图创建一个布局文件,它有四个EditTexts并排,每个框之间有一个句点(所以三个纯文本视图,每个包含一个句点)。这四个框将用于IP地址输入。我想让它们以我的布局为中心,但是我无法使用RelativeLayout或LinearLayout(水平)使它们正确对齐。这是布局文件的代码:
integer
我已经注释了进度条,因为它也位于中间位置,当我尝试使用Android Studio中的“设计”选项卡进行拖放操作时,它正在干扰。
答案 0 :(得分:0)
您应该可以使用已设置的 RelativeLayout 将这4个文本视图并排设置,并在它们之间设置一个句点。只需使用您为按钮 android:layout_toRightOf 设置的相同属性,同时为您创建的每个新文本视图设置ID。
<EditText
android:id="@+id/first"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/second"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/first" />
<EditText
android:id="@+id/third"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=","
android:layout_below="@id/name"
android:layout_toRightOf="@id/second" />
答案 1 :(得分:0)
这样的事情会达到预期的效果
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true">
<EditText
android:id="@+id/ip_seg_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:maxLength="3"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."/>
<EditText
android:id="@+id/ip_seg_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:maxLength="3"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."/>
<EditText
android:id="@+id/ip_seg_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:maxLength="3"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."/>
<EditText
android:id="@+id/ip_seg_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="number"
android:maxLength="3"/>
</LinearLayout>
您必须将实际的IP拼凑在一起,但在片段/活动中这不应该太难。
答案 2 :(得分:0)
Just place following Linear layout in your Relative layout it will display 4 edit text separated by period, you can further customise this code to exactly match your need
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center"
android:orientation="horizontal">
<EditText android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="1234"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."
android:textSize="30dp"/>
<EditText android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="1234"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."
android:textSize="30dp"/>
<EditText android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="1234"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="."
android:textSize="30dp"/>
<EditText android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="1234"/>
</LinearLayout>