大家好。
我为我的应用创建了一个页面,输入的文字不是垂直居中的。随后是XML截图。我玩过xml部分并没有得到任何结果。
这是XML部分:
CGRectMake(0, 0, self.view.frame.width, self.view.frame.height - tabBarController.view.frame.height))
我还在EditText上使用填充,但不幸的是没有用。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f3f2f2"
android:orientation="vertical"
android:weightSum="10.0" >
<!-- Header -->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1.5" >
<FrameLayout
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical" >
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="false"
android:scaleType="fitXY"
android:src="@drawable/header_half" />
</FrameLayout>
</FrameLayout>
<TextView
android:id="@+id/header_title_free_vib_xml"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:gravity="center"
android:text="@string/free_vibration_one_line_strg"
android:textColor="#ed1c24"
android:textSize="24dp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="6.0"
android:orientation="horizontal" >
<View
android:layout_width="20dp"
android:layout_height="match_parent"
android:background="#838383" />
<LinearLayout
android:id="@+id/big_body_center_edittext"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="10.0" >
<!-- Mass -->
<LinearLayout
android:id="@+id/ll_mass_xml"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginLeft="15dp"
android:layout_weight="2.0"
android:orientation="horizontal"
android:weightSum="100.0" >
<TextView
android:id="@+id/tv_mass_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="20.0"
android:gravity="left|center"
android:text="@string/mass_strg"
android:textColor="#838383"
android:textSize="16dp" />
<EditText
android:id="@+id/et_mass_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="70.0"
android:background="#e7e7e7"
android:cursorVisible="false"
android:gravity="center"
android:hint="@string/mass_boundary_for_editext_strg"
android:inputType="numberDecimal"
android:textColor="#bcbcbc" />
<TextView
android:id="@+id/tv_mass_unit_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10.0"
android:background="#adadad"
android:gravity="center"
android:text="@string/cm_strg"
android:textColor="#f3f2f2"
android:textSize="10dp" />
</LinearLayout>
<!-- Stiffness -->
<LinearLayout
android:id="@+id/ll_stiffness_xml"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="20dp"
android:layout_weight="2.0"
android:orientation="horizontal"
android:weightSum="100.0" >
<TextView
android:id="@+id/tv_stiffness_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="20.0"
android:gravity="left|center"
android:text="@string/stiffness_strg"
android:textColor="#838383"
android:textSize="16dp" />
<EditText
android:id="@+id/et_stiffness_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="70.0"
android:background="#e7e7e7"
android:cursorVisible="false"
android:gravity="center"
android:hint="@string/mass_boundary_for_editext_strg"
android:inputType="numberDecimal"
android:textColor="#bcbcbc" />
<TextView
android:id="@+id/tv_stiffness_unit_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10.0"
android:background="#adadad"
android:gravity="center"
android:text="@string/cm_strg"
android:textColor="#f3f2f2"
android:textSize="10dp" />
</LinearLayout>
<!-- Damping -->
<LinearLayout
android:id="@+id/ll_damping_xml"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="20dp"
android:layout_weight="2.0"
android:orientation="horizontal"
android:weightSum="100.0" >
<TextView
android:id="@+id/tv_damping_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="20.0"
android:gravity="left|center"
android:text="@string/damping_strg"
android:textColor="#838383"
android:textSize="16dp" />
<EditText
android:id="@+id/et_damping_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="70.0"
android:background="#e7e7e7"
android:cursorVisible="false"
android:gravity="center"
android:hint="@string/damping_boundary_for_editext_strg"
android:inputType="numberDecimal"
android:textColor="#bcbcbc" />
<TextView
android:id="@+id/tv_damping_unit_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10.0"
android:background="#adadad"
android:gravity="center"
android:text="@string/cm_strg"
android:textColor="#f3f2f2"
android:textSize="10dp" />
</LinearLayout>
<!-- Boundary Conditions -->
<LinearLayout
android:id="@+id/ll_boundary_conditions_xml"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginLeft="15dp"
android:layout_marginTop="20dp"
android:layout_weight="4.0"
android:orientation="horizontal"
android:weightSum="100.0" >
<TextView
android:id="@+id/tv_boundary_conditions_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="20.0"
android:gravity="left|center"
android:text="@string/boundary_conditions_strg"
android:textColor="#838383"
android:textSize="12dp" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="70.0"
android:orientation="vertical"
android:weightSum="2.0" >
<EditText
android:id="@+id/et_bc_initial_velocity_xml"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1.0"
android:background="#e7e7e7"
android:cursorVisible="false"
android:gravity="center"
android:hint="@string/bc_inivelo_boundary_for_et_strg"
android:inputType="numberDecimal"
android:textColor="#bcbcbc" />
<EditText
android:id="@+id/et_bc_initial_displacement_xml"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_marginTop="5dp"
android:layout_weight="1.0"
android:background="#e7e7e7"
android:cursorVisible="false"
android:gravity="center"
android:hint="@string/bc_inidis_boundary_for_et_strg"
android:inputType="numberDecimal"
android:textColor="#bcbcbc" />
</LinearLayout>
<TextView
android:id="@+id/tv_boundary_conditions_unit_xml"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="10.0"
android:background="#adadad"
android:gravity="center"
android:text="@string/cm_strg"
android:textColor="#f3f2f2"
android:textSize="10dp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<!-- END OF ALL EditTexts -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="2.0"
android:gravity="center" >
<ImageButton
android:id="@+id/free_vib_proceed_xml"
android:layout_width="75dp"
android:layout_height="75dp"
android:layout_gravity="center_horizontal|center"
android:background="@xml/round_circle_btn"
android:scaleType="fitXY"
android:src="@drawable/proceed" />
</LinearLayout>
</LinearLayout>
我使用TextWatcher来改变提示的大小:
EditText.setPadding(0, 0, 0, 0);
TextWatcher还有其他问题。规则(如果不这么大的话)选择适用于首次活动。删除所有文本并重新输入文本后,它可以正常工作。让我们看一下屏幕截图(其中2个截图来自平板电脑-7和#34;但之前的屏幕截图来自手持电话,Nexus 5。
什么都没碰:
输入一些数字:
删除输入数字和提示大小看起来很好,就像在代码中一样(大if-else):
所有提示必须具有更大的大小,代码中提到的大小(大if-else)但在第一次运行时它仍然很小并且在一些删除并输入接受的大小之后。 我希望提示文本大小与提供的代码类似。
感谢。
答案 0 :(得分:0)
使用此:
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ellipsize="start"
这适用于编辑文本
答案 1 :(得分:0)
变化
<EditText
android:layout_height="wrap_content"
/>
到
<EditText
android:layout_height="match_parent"
/>