我正在开发目标级别为2.1的Android相机应用 但是当我进入全屏模式时,我发现很难, 我想在预览期间显示按钮,但它实际上是隐藏的,所以任何人都知道如何处理它?</ p>
这是在这个网站上找到的代码并且有一点点修改 http://marakana.com/forums/android/examples/39.html
Preview preview;
Button buttonClick;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.cameralayout);
preview = new Preview(this);
((FrameLayout) findViewById(R.id.preview)).addView(preview);
setContentView(R.layout.cameralayout);
buttonClick = (Button) findViewById(R.id.buttonClick);
buttonClick.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
preview.camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
});
Log.d(TAG, "onCreate'd");
}
这是xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/preview"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<Button
android:id="@+id/buttonClick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center|bottom"
android:text="Click" />
</FrameLayout>
并且清单已设置主题以使其全屏显示
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
那么如何通过全屏预览呈现我的按钮 非常感谢〜
答案 0 :(得分:2)
我相信你错过了SurfaceView
视图。
在FrameLayout
内部布局中放置了用于保存相机预览的SurfaceView
和下面的按钮。
答案 1 :(得分:0)
buttonClick = (Button) findViewById(R.id.buttonClick);
行之后的添加这些行
((FrameLayout) findViewById(R.id.preview)).removeView(buttonClick);
((FrameLayout) findViewById(R.id.preview)).addView(buttonClick);
现在你可以看到你的按钮......
快乐学习.. :)