我有一个简单的MainActivity,其中从纵向到横向和回到纵向的方向更改正常。我的SecondActivity屏幕有一个带有EditText行的TextView,供用户输入。不幸的是,在从纵向到横向的方向更改时,布局不会正确更改。它似乎没有延续到横向模式。未加载布局文件的TextView,背景颜色和工具栏。仅显示EditText提示,显示的背景为白色。我在三星Galaxy S3和Genymotion模拟器上测试了同样糟糕的结果。最后,当设备或仿真器旋转回纵向时,视图布局正确加载......一切都像原始肖像显示一样正确显示。我在这里缺少什么?
SecondActivity java文件:
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cardviewinput);
EditText java文件:
public class ListenerEditText extends EditText {
...
布局xml文件:
...
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="1"
android:background="#FF0000" >
<TextView
android:id="@+id/createSkycard"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:layout_marginTop="20dp"
android:gravity="center_horizontal"
android:text="Create a skycard"
android:textAppearance="?android:attr/textAppearanceMedium"/>
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="1"
android:background="#FF0000" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:text=" To Do item: "
android:textAppearance="?android:attr/textAppearanceMedium"/>
<com.example.jdw.secondscreen.ListenerEditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/CEditText"
android:inputType="text|textCapSentences|textNoSuggestions"
android:textAppearance="?android:attr/textAppearanceMedium"
android:hint="Type a new item here"
android:textColor="#000000"
android:singleLine="true"
android:imeOptions="actionNext" >
<requestFocus />
</com.example.jdw.secondscreen.ListenerEditText>
...
答案 0 :(得分:0)
确保在方向更改时,光标不在edittext中。 听起来你的活动正在加载,光标已经设置为开始输入,所以当你改变方向时,你只看到带有提示的EditText内部并准备输入内容。
现在,如果你想让它以这种方式行事,那取决于你。