Android水平方向旋转时某些部分缺失

时间:2012-05-17 04:30:08

标签: android

我目前正在开发一个应用程序。当我在Android手机中安装my_app而在水平视图中旋转时,我的按钮丢失,请帮忙!提前致谢 我的java编码是:

public class Draw extends Activity {
     ImageView iv1;
    @Override   
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final DrawView drawView = new DrawView(this);
        setContentView(R.layout.draw);
        FrameLayout frm_layout=(FrameLayout) findViewById(R.id.main_frame);
        iv1=(ImageView) findViewById(R.id.imageView1);
        frm_layout.addView(drawView);

        Intent myIntent = getIntent(); // this is just for example purpose
        String test=myIntent.getExtras().getString("guided");
        if(test.equals("1"))
        {
            iv1.setImageResource(R.drawable.untitled);

            iv1.setAlpha(100);
        }
        else
        {
            //iv1.setImageResource(null);
        }
        //Toast.makeText(getApplicationContext(), test.toString(), 2000).show();


        Button btn_undo=(Button) findViewById(R.id.button1);
        btn_undo.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                drawView.onClickUndo();
            }
        });

        Button btn_redo=(Button) findViewById(R.id.button2);
        btn_redo.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                drawView.onClickRedo();
            }
        });
    }

}

我的XML编码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@android:color/white" >
 <FrameLayout
     android:id="@+id/main_frame"
     android:layout_width="fill_parent"
     android:layout_height="472dp"
     android:background="@android:color/white" >

    <ImageView
         android:id="@+id/imageView1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
          /> 

 </FrameLayout>
 <RelativeLayout
     android:id="@+id/relativeLayout1"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
       >
     <Button
         android:id="@+id/button2"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_alignParentTop="true"
         android:layout_centerHorizontal="true"
         android:text="Redo" />
     <Button
         android:id="@+id/button1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_alignParentLeft="true"
         android:layout_alignParentTop="true"
         android:text="Undo" />
     <Button
         android:id="@+id/button3"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_alignParentRight="true"
         android:layout_alignParentTop="true"
         android:text="Save" />
 </RelativeLayout>
</LinearLayout>

2 个答案:

答案 0 :(得分:0)

做一件事在res文件夹中创建一个名为Layout-land的文件夹,在其中放入你的xml文件。现在您可以在水平模式下设计xml。在该文件中执行您想要的任何更改并检查:

otw在整个布局中放置一个滚动条然后检查:)祝你好运

答案 1 :(得分:0)

在您的xml文件中只复制和过去,它将完全运行。我已经测试了。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@android:color/white" >
<FrameLayout
 android:id="@+id/main_frame"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 android:background="@android:color/white" android:layout_weight="0.1">

<ImageView
     android:id="@+id/imageView1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
      /> 

</FrameLayout>
<RelativeLayout
 android:id="@+id/relativeLayout1"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
   android:layout_weight="0.9" android:layout_gravity="bottom" android:layout_marginTop="-10dp">
 <Button
     android:id="@+id/button2"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_alignParentTop="true"
     android:layout_centerHorizontal="true"
     android:text="Redo" />
 <Button
     android:id="@+id/button1"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_alignParentLeft="true"
     android:layout_alignParentTop="true"
     android:text="Undo" />
 <Button
     android:id="@+id/button3"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_alignParentBottom="true"
     android:layout_alignParentRight="true"
     android:layout_alignParentTop="true"
     android:text="Save" />
 </RelativeLayout>
</LinearLayout>

希望这就是你想要的。