我有以下问题。
在LANDSCAPE
模式中设置的活动中,我有一个按钮。这个神奇的按钮设置在活动的右侧,从我的角度设置在屏幕的底部。
这就是它的样子:http://i52.tinypic.com/n63rmb.png。
这是我活动的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="horizontal">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="vertical"
android:layout_weight="1.0">
<SurfaceView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/surface_camera"
/>
</LinearLayout>
<LinearLayout android:layout_width="wrap_content"
android:layout_height="500px">
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/btnPhoto"
android:text="Take Photo"
android:layout_gravity="bottom|left"
/>
</LinearLayout>
</LinearLayout>
这是我用button
:
takePhoto = (Button) findViewById(R.id.btnPhoto);
takePhoto.setText(t);
RotateAnimation ranim = (RotateAnimation)AnimationUtils.loadAnimation(this, R.anim.myanim);
ranim.setFillAfter(true);
takePhoto.setAnimation(ranim);
最后这是res/anim/myanim xml
档案:
<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="-90"
android:pivotX="50%"
android:pivotY="50%"
android:duration="0" />
现在请告诉我如何增加该按钮的width
,谢谢。
Display display=getWindowManager().getDefaultDisplay();
width=display.getWidth();
height=display.getHeight();
takePhoto.setWidth(width);
但是根本没有变化!
答案 0 :(得分:1)
您的代码中存在两个问题...第一个问题是由于动画...评论您的动画代码...或更改它...我在评论后运行您的代码...
//RotateAnimation ranim = (RotateAnimation)AnimationUtils.loadAnimation(this, R.anim.myanim);
//ranim.setFillAfter(true);
//takePhoto.setAnimation(ranim);
第二个问题是布局,请为R.layout.takephoto
尝试此布局<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:orientation="horizontal">
<Button android:layout_width="fill_parent"
android:layout_height="45dp" android:id="@+id/btnPhoto" android:text="Take Photo"
android:layout_alignParentBottom="true" />
<SurfaceView android:layout_width="fill_parent"
android:layout_height="fill_parent" android:id="@+id/surface_camera"
android:layout_above="@id/btnPhoto" />
</RelativeLayout>
一个建议:尝试使用RelativeLayout ....它将简化您的布局。