Android 台灣中文網

標題: 關於Gridview的一些架構 [打印本頁]

作者: mechwarr    時間: 2013-12-4 13:50
標題: 關於Gridview的一些架構
小弟實做不是很豐富,因此在這裡遇到一個難題,

現在正在設計一個相簿式的APP
而在Activity中使用了Gridview來呈現assets裡面的圖片庫。

而希望點擊圖片後,會先有一個自定義Dialog來給使用者做最後決定是否要進入此圖對應的Activity及layout
並且在Dialog上附有點擊之放大圖片(有預設製作另一份大圖版)

但我不曉得如何在Activity設置layout中image的id做切換..

在此附上我的Activity code:

  1.         GridView gridview = (GridView) findViewById(R.id.gridview);
  2.         gridview.setAdapter(new ImageAdapter(this));
  3.             
  4.         gridview.setOnItemClickListener(new OnItemClickListener() {
  5.             public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
  6.                    
  7.                      final Dialog dialog = new Dialog(activity02.this,R.style.MyDialog);//指定自定義樣式
  8.                  dialog.setContentView(R.layout.dialog_layout);

  9.                  LinearLayout ll = (LinearLayout)dialog.findViewById(R.id.lldialog);
  10.                  ll.getLayoutParams().width=480;[float=right][/float]

  11.                  Button btn = (Button)dialog.findViewById(R.id.dialog_button_ok);
  12.                  Button btn_cancel = (Button)dialog.findViewById(R.id.dialog_button_cancel);
  13.                  
  14.                  btn.setOnClickListener(new OnClickListener() {
  15.                          @Override
  16.                          public void onClick(View v) {
  17.                                  Intent toAnotherActivity = new Intent(activity02.this, .class);
  18.                         startActivityForResult(toAnotherActivity, 0);
  19.                          }
  20.                  });

  21.                  btn_cancel.setOnClickListener(new OnClickListener() {
  22.                           @Override
  23.                           public void onClick(View v) {
  24.                                   dialog.dismiss();
  25.                           }
  26.                   });

  27.                  dialog.show();
複製代碼


這邊是ImageAdapter Activity code:

  1. public class ImageAdapter extends BaseAdapter {
  2.         private Context mContext;
  3.        
  4.         public ImageAdapter(Context c) {
  5.         mContext = c;
  6.     }
  7.         public int getCount() {
  8.         return mThumbIds.length;
  9.     }

  10.     public Object getItem(int position) {
  11.         return null;
  12.     }

  13.     public long getItemId(int position) {
  14.         return 0;
  15.     }
  16. // create a new ImageView for each item referenced by the Adapter
  17.     public View getView(int position, View convertView, ViewGroup parent) {
  18.         ImageView imageView;
  19.         if (convertView == null) {  // if it"s not recycled, initialize some attributes
  20.             imageView = new ImageView(mContext);
  21.             imageView.setLayoutParams(new GridView.LayoutParams(180, 254));
  22.             imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
  23.             imageView.setPadding(8, 8, 8, 8);
  24.         } else {
  25.             imageView = (ImageView) convertView;
  26.         }

  27.         imageView.setImageResource(mThumbIds[position]);
  28.         return imageView;
  29.     }

  30.     // references to our images
  31.     private Integer[] mThumbIds = {
  32.             R.drawable.t1, R.drawable.t2,
  33.             R.drawable.t3, R.drawable.t4,
  34.             R.drawable.t5, R.drawable.t6,
  35.             R.drawable.t1, R.drawable.t2,
  36.             R.drawable.t3, R.drawable.t4,
  37.             R.drawable.t5, R.drawable.t6,
  38.             R.drawable.t1, R.drawable.t2,
  39.             R.drawable.t3, R.drawable.t4,
  40.             R.drawable.t5, R.drawable.t6,
  41.     };
  42. }
複製代碼


各位高手大大誰能幫忙我解決問題嗎?
謝謝~~




歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1