Android开发(17)-通过安卓API的Tabs3实现仿优酷tabhost效果

来源:互联网 发布:西安行知教育怎么样 编辑:程序博客网 时间:2024/05/09 15:19

课程还没有讲了多少,前两天老师就让自己写个视频播放器客户端,这个是他上课讲的一个小小demo,通过查看安卓API的tabs3,实现仿优酷视频客户端的tabhost效果。我的API路径是D:\android\sdk\samples\android-17\ApiDemos\src\com\example\android\apis\view下的Tabs3,下面是实现效果:


废话不多说了,直接上码:

MainActivity.java

package com.example.video;import android.os.Bundle;import android.R.layout;import android.app.Activity;import android.app.TabActivity;import android.content.Intent;import android.view.LayoutInflater;import android.view.Menu;import android.widget.TabHost;public class MainActivity extends TabActivity {public TabHost tabHost;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//获取对象tabHost = getTabHost();        tabHost.addTab(tabHost.newTabSpec("myself")                .setIndicator("个人中心")                .setContent(new Intent(this, MySelfActivity.class)));        tabHost.addTab(tabHost.newTabSpec("myindex")                .setIndicator("优酷首页")                .setContent(new Intent(this, MyIndexActivity.class)));        tabHost.addTab(tabHost.newTabSpec("mycenter")                .setIndicator("频道中心")                .setContent(new Intent(this, MyCenterActivity.class)));              //指定的当前的tab        //通过索引指定  索引从0开始        tabHost.setCurrentTab(0); //从零开始                //通过标识来激活      //  tabHost.setCurrentTabByTag("XXX1");        }@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}

MyCenterActivity.java

package com.example.video;import android.app.Activity;import android.os.Bundle;public class MyCenterActivity  extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_mycenter);}}

MyIndexActivity.java

package com.example.video;import android.app.Activity;import android.os.Bundle;public class MyIndexActivity  extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_myindex);}}

MySelfActivity.java

package com.example.video;import android.app.Activity;import android.os.Bundle;public class MySelfActivity  extends Activity{@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_myself);}}

下面是布局文件:

activity_mycenter.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context=".MainActivity" >    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="优酷中心" /></RelativeLayout>

activity_myindex.xml

    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="优酷首页" />

activity_myself.xml

<TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="个人首页" />
当然别忘了在清单文件中配置activity

<!-- 配置activity组件 -->        <activity android:name="com.example.video.MyIndexActivity"/>        <activity android:name="com.example.video.MySelfActivity"/>        <activity android:name="com.example.video.MyCenterActivity"/>



原创粉丝点击