Android源码之高仿爱奇艺
浏览数:25 /
时间:2015年06月11日
Android源码之高仿爱奇艺
本源码是一套UI界面,高仿的爱奇艺。没有实现具体功能。本项目默认编码 UTF-8,需要的朋友可以拿去参考一下。
源码下载地址: http://url.cn/NLO3O4
源码片段:
-
public class MainActivity extends TabActivity implements OnClickListener {
-
public static String TAB_TAG_HOME = "home";
-
public static String TAB_TAG_CHANNEL = "channel";
-
public static String TAB_TAG_ACCOUNT = "account";
-
public static String TAB_TAG_SEARCH = "search";
-
public static String TAB_TAB_MORE = "more";
-
public static TabHost mTabHost;
-
static final int COLOR1 = Color.parseColor("#787878");
-
static final int COLOR2 = Color.parseColor("#ffffff");
-
ImageView mBut1, mBut2, mBut3, mBut4, mBut5;
-
TextView mCateText1, mCateText2, mCateText3, mCateText4, mCateText5;
-
-
Intent mHomeItent, mChannelIntent, mSearchIntent, mAccountIntent,
-
mMoreIntent;
-
-
int mCurTabId = R.id.channel1;
-
-
// Animation
-
private Animation left_in, left_out;
-
private Animation right_in, right_out;
-
-
-
/** Called when the activity is first created. */
-
@Override
-
public void onCreate(Bundle savedInstanceState) {
-
requestWindowFeature(Window.FEATURE_NO_TITLE);
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.main);
-
prepareAnim();
-
prepareIntent();
-
setupIntent();
-
prepareView();
-
}
-
-
private void prepareAnim() {
-
left_in = AnimationUtils.loadAnimation(this, R.anim.left_in);
-
left_out = AnimationUtils.loadAnimation(this, R.anim.left_out);
-
-
right_in = AnimationUtils.loadAnimation(this, R.anim.right_in);
-
right_out = AnimationUtils.loadAnimation(this, R.anim.right_out);
-
}
-
-
private void prepareView() {
-
mBut1 = (ImageView) findViewById(R.id.imageView1);
-
mBut2 = (ImageView) findViewById(R.id.imageView2);
-
mBut3 = (ImageView) findViewById(R.id.imageView3);
-
mBut4 = (ImageView) findViewById(R.id.imageView4);
-
mBut5 = (ImageView) findViewById(R.id.imageView5);
-
findViewById(R.id.channel1).setOnClickListener(this);
-
findViewById(R.id.channel2).setOnClickListener(this);
-
findViewById(R.id.channel3).setOnClickListener(this);
-
findViewById(R.id.channel4).setOnClickListener(this);
-
findViewById(R.id.channel5).setOnClickListener(this);
-
mCateText1 = (TextView) findViewById(R.id.textView1);
-
mCateText2 = (TextView) findViewById(R.id.textView2);
-
mCateText3 = (TextView) findViewById(R.id.textView3);
-
mCateText4 = (TextView) findViewById(R.id.textView4);
-
mCateText5 = (TextView) findViewById(R.id.textView5);
-
}
-
-
private void prepareIntent() {
-
mHomeItent = new Intent(this, HomeActivity.class);
-
mChannelIntent = new Intent(this, ChannelActivity.class);
-
mAccountIntent = new Intent(this, AccountActivity.class);
-
mSearchIntent = new Intent(this, SearchActivity.class);
-
mMoreIntent = new Intent(this, MoreActivity.class);
-
}
-
-
@Override
-
public boolean onKeyDown(int keyCode, KeyEvent event) {
-
// TODO Auto-generated method stub
-
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
-
mBut1.performClick();
-
return true;
-
}
-
return super.onKeyDown(keyCode, event);
-
}
-
-
private void setupIntent() {
-
mTabHost = getTabHost();
-
mTabHost.addTab(buildTabSpec(TAB_TAG_HOME, R.string.category_home,
-
R.drawable.icon_1_n, mHomeItent));
-
mTabHost.addTab(buildTabSpec(TAB_TAG_CHANNEL,
-
R.string.category_channel, R.drawable.icon_2_n, mChannelIntent));
-
mTabHost.addTab(buildTabSpec(TAB_TAG_SEARCH, R.string.category_search,
-
R.drawable.icon_3_n, mSearchIntent));
-
mTabHost.addTab(buildTabSpec(TAB_TAG_ACCOUNT,
-
R.string.category_account, R.drawable.icon_4_n, mAccountIntent));
-
mTabHost.addTab(buildTabSpec(TAB_TAB_MORE, R.string.category_more,
-
R.drawable.icon_5_n, mMoreIntent));
-
}
-
-
private TabHost.TabSpec buildTabSpec(String tag, int resLabel, int resIcon,
-
final Intent content) {
-
return mTabHost
-
.newTabSpec(tag)
-
.setIndicator(getString(resLabel),
-
getResources().getDrawable(resIcon))
-
.setContent(content);
-
}
-
-
public static void setCurrentTabByTag(String tab) {
-
mTabHost.setCurrentTabByTag(tab);
-
}
-
-
@Override
-
public void onClick(View v) {
-
// TODO Auto-generated method stub
-
if (mCurTabId == v.getId()) {
-
return;
-
}
-
mBut1.setImageResource(R.drawable.icon_1_n);
-
mBut2.setImageResource(R.drawable.icon_2_n);
-
mBut3.setImageResource(R.drawable.icon_3_n);
-
mBut4.setImageResource(R.drawable.icon_4_n);
-
mBut5.setImageResource(R.drawable.icon_5_n);
-
mCateText1.setTextColor(COLOR1);
-
mCateText2.setTextColor(COLOR1);
-
mCateText3.setTextColor(COLOR1);
-
mCateText4.setTextColor(COLOR1);
-
mCateText5.setTextColor(COLOR1);
-
int checkedId = v.getId();
-
final boolean o;
-
if (mCurTabId < checkedId)
-
o = true;
-
else
-
o = false;
-
if (o)
-
mTabHost.getCurrentView().startAnimation(left_out);
-
else
-
mTabHost.getCurrentView().startAnimation(right_out);
-
switch (checkedId) {
-
case R.id.channel1:
-
mTabHost.setCurrentTabByTag(TAB_TAG_HOME);
-
mBut1.setImageResource(R.drawable.icon_1_c);
-
mCateText1.setTextColor(COLOR2);
-
break;
-
case R.id.channel2:
-
mTabHost.setCurrentTabByTag(TAB_TAG_CHANNEL);
-
mBut2.setImageResource(R.drawable.icon_2_c);
-
mCateText2.setTextColor(COLOR2);
-
break;
-
case R.id.channel3:
-
mTabHost.setCurrentTabByTag(TAB_TAG_SEARCH);
-
mBut3.setImageResource(R.drawable.icon_3_c);
-
mCateText3.setTextColor(COLOR2);
-
break;
-
case R.id.channel4:
-
mTabHost.setCurrentTabByTag(TAB_TAG_ACCOUNT);
-
mBut4.setImageResource(R.drawable.icon_4_c);
-
mCateText4.setTextColor(COLOR2);
-
break;
-
case R.id.channel5:
-
mTabHost.setCurrentTabByTag(TAB_TAB_MORE);
-
mBut5.setImageResource(R.drawable.icon_5_c);
-
mCateText5.setTextColor(COLOR2);
-
break;
-
default:
-
break;
-
}
-
-
if (o)
-
mTabHost.getCurrentView().startAnimation(left_in);
-
else
-
mTabHost.getCurrentView().startAnimation(right_in);
-
mCurTabId = checkedId;
-
}
-
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。