테이블 레이아웃이 있습니다. "+" 버튼을 onclick하면 3 개의 텍스트 뷰와 4 개의 이미지 뷰를 포함하는 행을 동적으로 추가 할 수 있습니다. onclick이 "-" 버튼 일 때 특정 선택된 행을 삭제할 수 있습니다. 특정 행을 선택하면 특정 행에 카메라 버튼을 클릭하여 이미지를 추가 할 수 있습니다. 그것을하는 방법. 아무도 도와주세요 ..android에서 tablelayout의 특정 선택된 행에 이미지를 추가하는 방법은 무엇입니까?
1
A
답변
0
LayoutInflater를 사용하여 + 버튼을 클릭하면 행을 추가 할 수 있습니다. 또는 코드를 사용하여 뷰를 추가 할 수 있습니다. 이것은 ImageView를 테이블 레이아웃에 동적으로 추가하는 샘플 코드입니다.
private void addImageView()
{
ImageView mImageView = new ImageView(this);
TableLayout mTableLayout = (TableLayout) findViewById(R.id.tablelayout1);
mImageView.setId(getRndId());
TableRow mTableRow = new TableRow(this);
mTableRow.setId(getRndId());
mTableRow.addView(mImageView);
mTableLayout.addView(mTableRow);
}
/**
* Gets a random no and checks if its already used in R.java
* */
protected int getRndId()
{
Random rnd = new Random();
int possible_id = rnd.nextInt();
while(true)
{
// Log.d(TAG, "possible_id=" + possible_id);
View temp = findViewById(possible_id);
if ((possible_id>0) && (temp==null))
{
return possible_id;
}
else
{
possible_id = rnd.nextInt();
}
}
}
+0
해당 요구 사항과 관련된 몇 가지 예를 게시 할 수 있습니까? – user1441341
+0
하지만 여기에서는 listview 대신 tablelayout을 사용하고 있습니까? – user1441341
그래서 무엇이 문제입니까? 어디서 갇혔어요? – CSharp
하지만 문제는 카메라 버튼을 onclick 할 때 특정 행에 이미지를 추가 할 수 없다는 것입니다. 캡쳐 된 이미지는 마지막 행에 추가됩니다. – user1441341