我想开发一个应用程序,其中屏幕上有一个按钮,单击该按钮后,相机将打开,然后拍照,按钮所在的布局展开,照片位于此按钮下方。
我在一个屏幕截图的应用程序中展示了这个东西:
点击照片后,它会捕捉照片,然后此布局展开,照片如下所示:-
我想在我的应用程序中做同样的事情。
为此,我尝试了一些代码:-
(在 TableLayout 中的 TableRow 中我的应用程序中已经有一些字段)
首先,我创建一个 tableRow1(比如说),然后创建一个 TableLayout,然后为按钮创建一个 TableRow2,为 Image 创建一个 TableRow3。我将按钮插入tableRow2,然后将此tableRow2 插入TableLayout,然后将TableLayout 插入tableRow1。拍摄照片后,我将 Image 插入 TableRow3,然后将此 tableRow3 插入 TableLayout。
但是这段代码不起作用,这段代码也没有给出任何错误。
代码:
tableRow1 = new TableRow(this);
tableRow1.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
tableLayout = new TableLayout(this);
tableRow2 = new TableRow(this);
tableLayout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
tableRow2.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
buttonPhoto = new Button(this);
buttonPhoto.setText("Photo");
buttonPhoto.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
tableRow2.addView(buttonPhoto);
tableLayout.addView(tableRow2, new TableLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
tableLayoutMain.addView(tableLayout, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
buttonPhoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
method1();
}
});
public void method1(){
tableRow3 = new TableRow(this);
tableRow3.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
imageViewPhoto = new ImageView(this);
imageViewPhoto.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, 110));
tableRow3.addView(imageViewTakePhoto);
tableLayout.addView(tableRow3, new TableLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
}
通过使用此代码,我什至无法在屏幕上看到按钮。