动态分割手机屏幕

xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:background="@drawable/white"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
>

    <GridView
        android:id="@+id/myGridView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numColumns="5" >
    </GridView>

  <TextView
    android:id="@+id/myTextView1"
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    android:textColor="@drawable/blue"
  />
  <LinearLayout
    android:orientation="horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
  >
  <Button
    android:id="@+id/myButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/str_button1" />
  <Button
    android:id="@+id/myButton2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/str_button2" />
  </LinearLayout>
</LinearLayout>

<?xml version="1.0" encoding="utf-8"?>
<TextView
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/myCheckedTextView1"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:textColor="@drawable/blue"
  android:textSize="12sp"
  android:textAppearance="?android:attr/textAppearanceLarge"
  android:gravity="center_vertical"
  android:paddingLeft="6dip"
  android:minHeight="?android:attr/listPreferredItemHeight"
/>

java文件:

package dfzy.EX032;

import dfzy.EX032.R;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.GridView;
import android.widget.TextView;

public class EX032 extends Activity
{
  private TextView mTextView01;
  private Button mButton01,mButton02;
  private GridView mGridView01;
  private String[] mGames1,mGames2;
  private ArrayAdapter<String> aryAdapter1;
  
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    
    /* 4个字符串数组 */
    mGames1 = new String[]
                  {
                    getResources().getString(R.string.str_list1),
                    getResources().getString(R.string.str_list2),
                    getResources().getString(R.string.str_list3),
                    getResources().getString(R.string.str_list4)
                  };
    
    /* 9个字符串数组 */
    mGames2 = new String[]
                  {
                    getResources().getString(R.string.str_list1),
                    getResources().getString(R.string.str_list2),
                    getResources().getString(R.string.str_list3),
                    getResources().getString(R.string.str_list4),
                    getResources().getString(R.string.str_list1),
                    getResources().getString(R.string.str_list2),
                    getResources().getString(R.string.str_list3),
                    getResources().getString(R.string.str_list4),
                    getResources().getString(R.string.str_list1)
                  };
    
    mButton01 = (Button)findViewById(R.id.myButton1);
    mButton02 = (Button)findViewById(R.id.myButton2);
    mGridView01 = (GridView)findViewById(R.id.myGridView1);
    
    mTextView01 = (TextView)findViewById(R.id.myTextView1);
    
    mButton01.setOnClickListener(new Button.OnClickListener()
    {
      @Override
      public void onClick(View v)
      {
        // TODO Auto-generated method stub
        
        /* 4个元素,以2列方式呈现(2x2) */
        mGridView01.setNumColumns(2);
        
        aryAdapter1 = new ArrayAdapter<String>
        (EX032.this, R.layout.simple, mGames1);
        
        mGridView01.setAdapter(aryAdapter1);
        //mGridView01.setScrollBarStyle(DEFAULT_KEYS_DIALER);
        mGridView01.setSelection(2);
        mGridView01.refreshDrawableState();
      }
    });
    
    mButton02.setOnClickListener(new Button.OnClickListener()
    {
      @Override
      public void onClick(View v)
      {
        // TODO Auto-generated method stub
        
        /* 9个元素,以3列方式呈现(3x3) */
        mGridView01.setNumColumns(3);
        
        aryAdapter1 = new ArrayAdapter<String>
        (EX032.this, R.layout.simple, mGames2);
        
        mGridView01.setAdapter(aryAdapter1);
      }
    });
    
    mGridView01.setOnItemClickListener
               (new GridView.OnItemClickListener()
    {
      @Override
      public void onItemClick(AdapterView<?> parent, 
                              View v, int position, long arg3)
      {
        // TODO Auto-generated method stub
        
        /* 判断Adapter里的元素个数,判断被点击的是第几个元素名称 */
        switch(aryAdapter1.getCount())
        {
          case 4:
            /* position为GridView里的元素索引值 */
            mTextView01.setText(mGames1[position]);
            break;
          case 9:
            mTextView01.setText(mGames2[position]);
            break;
        }
      }
    });
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值