现在的位置: 首页 > 综合 > 正文

单击一个应用图标显示其它应用图标,单击其它应用图标则进入对应事件

2013年10月21日 ⁄ 综合 ⁄ 共 4785字 ⁄ 字号 评论关闭
package zte.com.cn.ideas;

import android.app.Activity;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.TextView;

public class Ideas extends Activity implements GridView.OnItemClickListener
{
	private GridView mGV;
	private TextAdapter mTA;
	private Integer[] mImageIds = 
	{
	    R.drawable.portalmovil,R.drawable.mitelcel,R.drawable.ipromociones,R.drawable.msngr,R.drawable.plugger,
	    R.drawable.ideasmusik,R.drawable.ijuegos,R.drawable.iapps,R.drawable.ideportes,R.drawable.iradio,
	    R.drawable.ivideo,R.drawable.itelcel,R.drawable.itv,R.drawable.itonos,R.drawable.iimagenes
	    
	};
	private Integer[] mText =
	{
			R.string.portalmovil,R.string.mitelcel,R.string.ipromociones,R.string.msngr,R.string.plugger,
		    R.string.ideasmusik,R.string.ijuegos,R.string.iapps,R.string.ideportes,R.string.iradio,
		    R.string.ivideo,R.string.itelcel,R.string.itv,R.string.itonos,R.string.iimagenes
	};	
	public class TextAdapter extends BaseAdapter
	{
		private Context mContext;		
		public TextAdapter(Context mContext)
		{
			this.mContext = mContext;
		}		
		public int getCount()
		{
			// TODO Auto-generated method stub
			return mImageIds.length;
		}
		public Object getItem(int position)
		{
			// TODO Auto-generated method stub
			return position;
		}
		public long getItemId(int position) 
		{
			// TODO Auto-generated method stub
			return position;
		}
		public View getView(int position, View convertView, ViewGroup parent)
		{
			// TODO Auto-generated method stub
			final TextView textView = new TextView(mContext);
			Drawable ico;
			ico = getResources().getDrawable(mImageIds[position]);
			//图片在这个textView出现的上、下、左、右位置
			textView.setCompoundDrawablesWithIntrinsicBounds(null, ico, null, null);
			textView.setText(mText[position]);
		    //文字的位置
			textView.setGravity(Gravity.CENTER);
			textView.setHeight(80);
			return textView;
		}	
	}	
	protected void onCreate(Bundle savedInstanceState)
	{
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		
		mGV = (GridView)findViewById(R.id.grid);
		mTA = new TextAdapter(this);
		
		mGV.setAdapter(mTA);
		mGV.setOnItemClickListener(this);
		mGV.setSelection(0);
	}
	 //此函数根据网格布局每一格有一个固定的position来访问(网格从左到右position=0,1,2)
	public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) 
	{
		String portalmovil = "http://www.telcel.com";
		String mitelcel = "http://mitelcel.telcel.com";
		String ipromociones = "http://promo.telcel.com";
		String msngr = "http://messenger.telcel.com/get";
		String plugger = "http://mx.plugger.com";
		String ideasmusik = "http://musica.telcel.com";
		String ijuegos = "http://juegos.telcel.com";
		String iapps = "http://apps.telcel.com";
		String ideportes = "http://deportes.telcel.com";
		
		String iradio = "com.Mobzilla.Player";
		String iradio01 = "com.Mobzilla.Player.MobzillaPlayerActivity";
		
		String ivideo = "http://videos.telcel.com";
		
		String itelcel = "com.android.email";
		String itelcel01 = "com.android.email.activity.setup.AccountSetupBasics";
		
		String itv = "com.rok.rokplayer.android";
		String itv01 = "com.rok.rokplayer.android.activity.SplashActivity";
		
		String itonos = "http://tonos.telcel.com";
		String iimagenes = "http://imagenes.telcel.com";	
		switch(position)
		{
		case 0:	startWeb(portalmovil); break;
		case 1: startWeb(mitelcel); break;
		case 2:	startWeb(ipromociones); break;
		case 3:	startWeb(msngr); break;
		case 4:	startWeb(plugger); break;
		case 5:	startWeb(ideasmusik); break;
		case 6:	startWeb(ijuegos); break;
		case 7:	startWeb(iapps); break;
		case 8:	startWeb(ideportes); break;
		case 9: startApk(iradio , iradio01); break;
		case 10:startWeb(ivideo); break;		
		case 11:startApk(itelcel , itelcel01); break;		
		case 12:startApk(itv,itv01);break;		
		case 13:startWeb(itonos); break;		
		case 14:startWeb(iimagenes); break;		
		default: break;			
		}		
	}
	public void startWeb(String strur1)
	{
		Uri uri= Uri.parse(strur1);
		Intent intent = new Intent(Intent.ACTION_VIEW,uri);
		startActivity(intent);
	}
	public void startApk(String packages,String mainactivity)
	{
		Intent mIntent = new Intent();
		ComponentName comp = new ComponentName(packages,mainactivity);
		mIntent.setComponent(comp);		
		mIntent.setAction("android.intent.action.MAIN");
		//加了下面一句,则点击Ideas里面的itv,再按Home。再点击Ideas,会回到Ideas列表,不加此句的话,只会回到Ideas里面的itv客户端
		mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
		startActivity(mIntent);		
	}
}
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout 
	xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/widget"
    android:descendantFocusability="beforeDescendants"
    android:drawingCacheQuality="auto"    
    >
	<GridView
	android:id="@+id/grid"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:numColumns="3"
	android:clickable="true"
	android:padding="10dip"
	android:horizontalSpacing="10dip"
	android:verticalSpacing="15dip"
	android:scrollbarStyle="outsideInset"
	android:gravity="fill"
	android:fitsSystemWindows="true">
	</GridView>
</AbsoluteLayout>

 

抱歉!评论已关闭.