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

通过安卓API的Tabs3实现仿优酷tabhost效果

2013年09月12日 ⁄ 综合 ⁄ 共 2965字 ⁄ 字号 评论关闭

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

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

MainActivity.java

[java] view
plain
copy

  1. package com.example.video;  
  2.   
  3. import android.os.Bundle;  
  4. import android.R.layout;  
  5. import android.app.Activity;  
  6. import android.app.TabActivity;  
  7. import android.content.Intent;  
  8. import android.view.LayoutInflater;  
  9. import android.view.Menu;  
  10. import android.widget.TabHost;  
  11.   
  12. public class MainActivity extends TabActivity {  
  13.       
  14.     public TabHost tabHost;  
  15.       
  16.     @Override  
  17.     protected void onCreate(Bundle savedInstanceState) {  
  18.         super.onCreate(savedInstanceState);  
  19.         //获取对象  
  20.         tabHost = getTabHost();  
  21.           
  22.         tabHost.addTab(tabHost.newTabSpec("myself")  
  23.                 .setIndicator("个人中心")  
  24.                 .setContent(new Intent(this, MySelfActivity.class)));  
  25.         tabHost.addTab(tabHost.newTabSpec("myindex")  
  26.                 .setIndicator("优酷首页")  
  27.                 .setContent(new Intent(this, MyIndexActivity.class)));  
  28.         tabHost.addTab(tabHost.newTabSpec("mycenter")  
  29.                 .setIndicator("频道中心")  
  30.                 .setContent(new Intent(this, MyCenterActivity.class)));  
  31.           
  32.         
  33.         //指定的当前的tab  
  34.         //通过索引指定  索引从0开始  
  35.         tabHost.setCurrentTab(0); //从零开始  
  36.           
  37.         //通过标识来激活  
  38.       //  tabHost.setCurrentTabByTag("XXX1");  
  39.           
  40.     }  
  41.   
  42.     @Override  
  43.     public boolean onCreateOptionsMenu(Menu menu) {  
  44.         // Inflate the menu; this adds items to the action bar if it is present.  
  45.         getMenuInflater().inflate(R.menu.main, menu);  
  46.         return true;  
  47.     }  
  48.   
  49. }  


MyCenterActivity.java

[java] view
plain
copy

  1. package com.example.video;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5.   
  6. public class MyCenterActivity  extends Activity{  
  7.       
  8.     @Override  
  9.     protected void onCreate(Bundle savedInstanceState) {  
  10.         super.onCreate(savedInstanceState);  
  11.           
  12.         setContentView(R.layout.activity_mycenter);  
  13.     }  
  14.   
  15. }  


MyIndexActivity.java

[java] view
plain
copy

  1. package com.example.video;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5.   
  6. public class MyIndexActivity  extends Activity{  
  7.       
  8.     @Override  
  9.     protected void onCreate(Bundle savedInstanceState) {  
  10.         super.onCreate(savedInstanceState);  
  11.           
  12.         setContentView(R.layout.activity_myindex);  
  13.     }  
  14.   
  15. }  


MySelfActivity.java

[java] view
plain
copy

  1. package com.example.video;  
  2.   
  3. import android.app.Activity;  
  4. import android.os.Bundle;  
  5.   
  6. public class MySelfActivity  extends Activity{  
  7.       
  8.     @Override  
  9.     protected void onCreate(Bundle savedInstanceState) {  
  10.         super.onCreate(savedInstanceState);  
  11.           
  12.         setContentView(R.layout.activity_myself);  
  13.     }  
  14.   
  15. }  


下面是布局文件:

activity_mycenter.xml

[html] view
plain
copy

  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  

抱歉!评论已关闭.