-1
내 대화 상자 안에 GridView 갤러리를 만들었습니다. 이 갤러리에는 페이지가 있지만 지금은 각 대화 상자에 대해 분리 된 대화 상자를 만듭니다. 이 모든 대화 상자 (갤러리 페이지)는 현재 진행 상황 (예 : 4/12 페이지에 있음)과 사진 (각 페이지마다 다른 이미지로드)에 따라 서로 다릅니다. 나는 모든 페이지에 대해 새로운 대화 상자를 만드는 것이 실용적이지 않다고 생각하지만, 단 하나의 대화 상자에서 어떻게해야합니까? 내 대화 상자 코드의대화 상자의 모든 내용을 업데이트하십시오.
하나 :
public void threeChoice()
{
Collections.sort(photoList = imageReader(photoDir,"1008"));
inflater = this.getLayoutInflater();
// Dialog layout
v = inflater.inflate(R.layout.dialog_choice, null);
progressDialog = (ProgressBar)v.findViewById(R.id.progressBar);
//progressDialog = new ProgressBar(mContext);
progressDialog.setMax(7);
progressDialog.setProgress(3);
gV = (GridView) v.findViewById(R.id.gridView);
// GridAdapter (Pass context and files list)
GridAdapter adapter = new GridAdapter(this, photoList);
// Set adapter
gV.setAdapter(adapter);
final AlertDialog.Builder builder2 = new AlertDialog.Builder(this);
builder2.setTitle("Album Page: 1008");
builder2.setView(v);
builder2.setPositiveButton("NEXT", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which)
{
NextPage(); //<-- go to next page
}
}).setNegativeButton("BACK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which)
{
PreviousPage(); //<-- Back to previous page
}
});
gV.setOnItemClickListener(new AdapterView.OnItemClickListener()
{
public void onItemClick(AdapterView<?> parent, View v, int position, long id)
{
Intent intent = new Intent(getApplicationContext(), PhotoDetails.class);
intent.putExtra("image", photoList.get(position));
startActivity(intent);
}
});
builder2.setCancelable(false);
final AlertDialog dialog = builder2.create();
dialog.show();
}
하지만 2 개의 레이아웃이 있습니다. 그리드와 두 번째로 항목 (ImageView)이 있습니다 (View V). imageReader 함수를 호출하고 업데이트 어댑터와 같은 나머지 작업을 수행해야하는 경우 –
v 모두 포함하지 않습니다. 대화 상자에 표시되는보기? – Firerazzer