EX04_18.java
上传用户:vip_99
上传日期:2021-03-27
资源大小:61159k
文件大小:4k
源码类别:

android开发

开发平台:

Java

  1. package irdc.ex04_18;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.view.View;
  5. import android.widget.AdapterView;
  6. import android.widget.ArrayAdapter;
  7. import android.widget.Button;
  8. import android.widget.GridView;
  9. import android.widget.TextView;
  10. public class EX04_18 extends Activity
  11. {
  12.   private TextView mTextView01;
  13.   private Button mButton01,mButton02;
  14.   private GridView mGridView01;
  15.   private String[] mGames1,mGames2;
  16.   private ArrayAdapter<String> aryAdapter1;
  17.   
  18.   /** Called when the activity is first created. */
  19.   @Override
  20.   public void onCreate(Bundle savedInstanceState)
  21.   {
  22.     super.onCreate(savedInstanceState);
  23.     setContentView(R.layout.main);
  24.     
  25.     /* 4个字符串数组 */
  26.     mGames1 = new String[]
  27.                   {
  28.                     getResources().getString(R.string.str_list1),
  29.                     getResources().getString(R.string.str_list2),
  30.                     getResources().getString(R.string.str_list3),
  31.                     getResources().getString(R.string.str_list4)
  32.                   };
  33.     
  34.     /* 9个字符串数组 */
  35.     mGames2 = new String[]
  36.                   {
  37.                     getResources().getString(R.string.str_list1),
  38.                     getResources().getString(R.string.str_list2),
  39.                     getResources().getString(R.string.str_list3),
  40.                     getResources().getString(R.string.str_list4),
  41.                     getResources().getString(R.string.str_list1),
  42.                     getResources().getString(R.string.str_list2),
  43.                     getResources().getString(R.string.str_list3),
  44.                     getResources().getString(R.string.str_list4),
  45.                     getResources().getString(R.string.str_list1)
  46.                   };
  47.     
  48.     mButton01 = (Button)findViewById(R.id.myButton1);
  49.     mButton02 = (Button)findViewById(R.id.myButton2);
  50.     mGridView01 = (GridView)findViewById(R.id.myGridView1);
  51.     
  52.     mTextView01 = (TextView)findViewById(R.id.myTextView1);
  53.     
  54.     mButton01.setOnClickListener(new Button.OnClickListener()
  55.     {
  56.       @Override
  57.       public void onClick(View v)
  58.       {
  59.         // TODO Auto-generated method stub
  60.         
  61.         /* 4个元素,以2列方式呈现(2x2) */
  62.         mGridView01.setNumColumns(2);
  63.         
  64.         aryAdapter1 = new ArrayAdapter<String>
  65.         (EX04_18.this, R.layout.simple_list_item_1_small, mGames1);
  66.         
  67.         mGridView01.setAdapter(aryAdapter1);
  68.         //mGridView01.setScrollBarStyle(DEFAULT_KEYS_DIALER);
  69.         mGridView01.setSelection(2);
  70.         mGridView01.refreshDrawableState();
  71.       }
  72.     });
  73.     
  74.     mButton02.setOnClickListener(new Button.OnClickListener()
  75.     {
  76.       @Override
  77.       public void onClick(View v)
  78.       {
  79.         // TODO Auto-generated method stub
  80.         
  81.         /* 9个元素,以3列方式呈现(3x3) */
  82.         mGridView01.setNumColumns(3);
  83.         
  84.         aryAdapter1 = new ArrayAdapter<String>
  85.         (EX04_18.this, R.layout.simple_list_item_1_small, mGames2);
  86.         
  87.         mGridView01.setAdapter(aryAdapter1);
  88.       }
  89.     });
  90.     
  91.     mGridView01.setOnItemClickListener
  92.                (new GridView.OnItemClickListener()
  93.     {
  94.       @Override
  95.       public void onItemClick(AdapterView<?> parent, 
  96.                               View v, int position, long arg3)
  97.       {
  98.         // TODO Auto-generated method stub
  99.         
  100.         /* 判断Adapter里的元素个数,判断被点击的是第几个元素名称 */
  101.         switch(aryAdapter1.getCount())
  102.         {
  103.           case 4:
  104.             /* position为GridView里的元素索引值 */
  105.             mTextView01.setText(mGames1[position]);
  106.             break;
  107.           case 9:
  108.             mTextView01.setText(mGames2[position]);
  109.             break;
  110.         }
  111.       }
  112.     });
  113.   }
  114. }