Android定制TabHost
我无法在自定义tabHost中传递intent。请任何人帮助我。我尝试将intent从customtabactivity.java传递到firsttab.java,其中包含作为setcontentview的firsttab.xml Main.xml } firsttab.xmlAndroid定制TabHost,android,Android,我无法在自定义tabHost中传递intent。请任何人帮助我。我尝试将intent从customtabactivity.java传递到firsttab.java,其中包含作为setcontentview的firsttab.xml Main.xml } firsttab.xml }您好,这将使用full创建tabhost。如果您想在单个选项卡中切换活动,也可以创建ActivityGroup public class MyTabHost extends TabActivity { publ
}您好,这将使用full创建tabhost。如果您想在单个选项卡中切换活动,也可以创建ActivityGroup
public class MyTabHost extends TabActivity
{
public static TabHost tabHost;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Resources res = getResources(); // Resource object to get Drawables
tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
intent = new Intent().setClass(this, MyFirst1.class);
spec = tabHost.newTabSpec("MyFirst1").setIndicator("",res.getDrawable(R.drawable.image1)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, MyFirst2.class);
spec = tabHost.newTabSpec("MyFirst2").setIndicator("",res.getDrawable(R.drawable.image2)).setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
}我想在程序中传递intent。在何处调用intent。我尝试调用,但无法。因为我已经创建了spec,所以请查看将传递intent的代码。
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.Window;
import android.widget.TabHost;
import android.widget.TextView;
import android.widget.TabHost.TabContentFactory;
import android.widget.TabHost.TabSpec;
import android.content.Intent;
public class CustomTabActivity extends Activity {
private TabHost mTabHost;
private void setupTabHost() {
mTabHost = (TabHost) findViewById(android.R.id.tabhost);
mTabHost.setup();
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// construct the tabhost
requestWindowFeature(Window.FEATURE_LEFT_ICON);
setContentView(R.layout.main);
getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON,R.drawable.headphones);
setupTabHost();
mTabHost.getTabWidget().setDividerDrawable(R.drawable.tab_divider);
setupTab1(new TextView(this), "Showcase");
setupTab2(new TextView(this), "Catalogue");
}
private void setupTab1(final View view, final String tag) {
View tabview = createTabView(mTabHost.getContext(), tag);
TabSpec setContent1 = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(new TabContentFactory() {
public View createTabContent(String tag) {
return view;}
});
mTabHost.addTab(setContent1);
}
private void setupTab2(final View view, final String tag) {
View tabview = createTabView(mTabHost.getContext(), tag);
TabSpec setContent = mTabHost.newTabSpec(tag).setIndicator(tabview).setContent(new TabContentFactory() {
public View createTabContent(String tag) {
return view;}
});
mTabHost.addTab(setContent);
}
private static View createTabView(final Context context, final String text) {
View view = LayoutInflater.from(context).inflate(R.layout.tabs_bg, null);
TextView tv = (TextView) view.findViewById(R.id.tabsText);
tv.setText(text);
return view;
}
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="20dip"
android:id="@+id/relative">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/New_Release"
android:textSize="15dip"
android:typeface="serif"
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Featured_Artist"
android:textSize="15dip"
android:typeface="serif"
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Crew_Picks"
android:textSize="15dip"
android:typeface="serif"
android:layout_weight="1"/>
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:paddingTop="20dip"
android:layout_below="@id/relative">
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_weight="1"
android:src="@drawable/da"
android:padding="2dip"
android:id="@+id/image1"/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_toRightOf="@id/image1"
android:layout_weight="1"
android:src="@drawable/dd"
android:padding="2dip"
android:id="@+id/image2"
/>
<ImageView
android:layout_width="100dip"
android:layout_height="148dip"
android:layout_toRightOf="@id/image2"
android:src="@drawable/dd"
android:padding="2dip"
android:id="@+id/image3"/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:src="@drawable/da"
android:layout_weight="1"
android:padding="2dip"
android:id="@+id/image4"
android:layout_alignParentRight="true"/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_toLeftOf="@id/image4"
android:padding="2dip"
android:layout_weight="1"
android:src="@drawable/dd"
android:id="@+id/image5"
/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_below="@id/image1"
android:padding="2dip"
android:layout_weight="1"
android:id="@+id/image6"
android:src="@drawable/dd"/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_below="@id/image2"
android:layout_toRightOf="@id/image6"
android:padding="2dip"
android:layout_weight="1"
android:id="@+id/image7"
android:src="@drawable/da"
/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_alignParentRight="true"
android:layout_below="@id/image4"
android:padding="2dip"
android:layout_weight="1"
android:id="@+id/image9"
android:src="@drawable/da"
/>
<ImageView
android:layout_width="55dip"
android:layout_height="75dip"
android:layout_toLeftOf="@id/image9"
android:padding="2dip"
android:layout_below="@id/image5"
android:layout_weight="1"
android:id="@+id/image8"
android:src="@drawable/dd"
/>
</RelativeLayout>
</RelativeLayout>
public class firsttab extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
/* First Tab Content */
setContentView(R.layout.firsttab);
}
public class MyTabHost extends TabActivity
{
public static TabHost tabHost;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Resources res = getResources(); // Resource object to get Drawables
tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
intent = new Intent().setClass(this, MyFirst1.class);
spec = tabHost.newTabSpec("MyFirst1").setIndicator("",res.getDrawable(R.drawable.image1)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, MyFirst2.class);
spec = tabHost.newTabSpec("MyFirst2").setIndicator("",res.getDrawable(R.drawable.image2)).setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}