这是我在其中使用linearlayout和Relative的代码。我不想使用margin_left,因为它是常量我想调整显示的开关左边的短信按钮。
我尝试过leftof但XML文件中有异常,我得到的唯一选择是使用左边的边距,这是固定的。
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_marginTop="50dp"
android:layout_height="wrap_content">
<RelativeLayout
android:layout_width="match_parent"
android:layout_gravity="left"
android:id="@+id/first"
android:layout_height="wrap_content">
<TextView
android:layout_width="80dp"
android:layout_height="80dp"
android:background="@drawable/call"
android:id="@+id/caller_switch_tv" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/caller_switch_tv"
android:id="@+id/caller_switch" />
<TextView
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_marginRight="20dp"
android:background="@drawable/sms"
android:layout_toRightOf="@id/caller_switch"
android:id="@+id/sms_sender_swich_tv"
/>
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/sms_sender_swich_tv"
android:id="@+id/sms_switch" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:id="@+id/one"
android:textStyle="bold"
android:textColor="@color/colorAccent"
android:layout_marginLeft="20dp"
android:layout_below="@id/caller_switch_tv"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_weight="1"
android:text="Call"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:id="@+id/two"
android:textColor="@color/colorAccent"
android:layout_below="@+id/sms_sender_swich_tv"
android:layout_alignStart="@+id/sms_sender_swich_tv"
android:layout_marginLeft="20dp"
android:layout_weight="1"
android:textStyle="bold"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="SMS"
/>
</RelativeLayout>
</LinearLayout>
答案 0 :(得分:0)
试试这个:
<TextView
android:id="@+id/caller_switch_tv"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="@drawable/call" />
<Switch
android:id="@+id/caller_switch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@+id/caller_switch_tv"
android:layout_toRightOf="@+id/caller_switch_tv" />
<TextView
android:id="@+id/sms_sender_swich_tv"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_toLeftOf="@+id/sms_switch"
android:layout_toStartOf="@+id/sms_switch"
android:background="@drawable/sms"
/>
<Switch
android:id="@+id/sms_switch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true" />