android qq消息界面布局,Android 仿QQ消息界面

package com.example.switchutils;

import android.graphics.Color;

import android.os.Bundle;

import android.support.v4.app.Fragment;

import android.support.v4.app.FragmentActivity;

import android.support.v4.app.FragmentManager;

import android.support.v4.app.FragmentTransaction;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.Window;

import android.widget.Button;public classSwitchActivity extends FragmentActivity {privateButton btn_message,btn_call;privateCallFragment callFragment;privateMessageFragment messageFragment;public static final int MESSAGE_FRAGMENT_TYPE = 1;public static final int CALL_FRAGMENT_TYPE = 2;public int currentFragmentType = -1;

@Overrideprotected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);this.requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_switch);

btn_message=(Button)findViewById(R.id.btn_message);

btn_call=(Button)findViewById(R.id.btn_call);

btn_message.setOnClickListener(onClicker);

btn_call.setOnClickListener(onClicker);

FragmentManager fragmentManager=getSupportFragmentManager();if (savedInstanceState != null) {int type = savedInstanceState.getInt("currentFragmentType");

messageFragment= (MessageFragment)fragmentManager.findFragmentByTag("message");

callFragment= (CallFragment)fragmentManager.findFragmentByTag("call");if(type > 0)

loadFragment(type);

}else{

FragmentTransaction transaction=fragmentManager

.beginTransaction();

Fragment mainFragment= fragmentManager.findFragmentByTag("message");if (mainFragment != null) {

transaction.replace(R.id.fl_content, mainFragment);

transaction.commit();

}else{

loadFragment(MESSAGE_FRAGMENT_TYPE);

}

}

}

@Overrideprotected voidonSaveInstanceState(Bundle outState) {

super.onSaveInstanceState(outState);

outState.putInt("lastFragmentTag", currentFragmentType);

}private void switchFragment(inttype) {switch(type) {caseMESSAGE_FRAGMENT_TYPE:

loadFragment(MESSAGE_FRAGMENT_TYPE);break;caseCALL_FRAGMENT_TYPE:

loadFragment(CALL_FRAGMENT_TYPE);break;

}

}private void loadFragment(inttype) {

FragmentManager fragmentManager=getSupportFragmentManager();

FragmentTransaction transaction=fragmentManager.beginTransaction();if (type ==CALL_FRAGMENT_TYPE) {if (callFragment == null) {

callFragment= newCallFragment();

transaction.add(R.id.fl_content, callFragment,"zhishi");

}else{

transaction.show(callFragment);

}if (messageFragment != null) {

transaction.hide(messageFragment);

}

currentFragmentType=MESSAGE_FRAGMENT_TYPE;

}else{if (messageFragment == null) {

messageFragment= newMessageFragment();

transaction.add(R.id.fl_content, messageFragment,"wenda");

}else{

transaction.show(messageFragment);

}if (callFragment != null) {

transaction.hide(callFragment);

}

currentFragmentType=CALL_FRAGMENT_TYPE;

}

transaction.commitAllowingStateLoss();

}private OnClickListener onClicker = newOnClickListener() {

@Overridepublic voidonClick(View v) {switch(v.getId()) {caseR.id.btn_message:

btn_message.setTextColor(Color.parseColor("#df3031"));

btn_call.setTextColor(Color.WHITE);

btn_message

.setBackgroundResource(R.drawable.baike_btn_pink_left_f_96);

btn_call

.setBackgroundResource(R.drawable.baike_btn_trans_right_f_96);

switchFragment(MESSAGE_FRAGMENT_TYPE);break;caseR.id.btn_call:

btn_message.setTextColor(Color.WHITE);

btn_call.setTextColor(Color.parseColor("#df3031"));

btn_message

.setBackgroundResource(R.drawable.baike_btn_trans_left_f_96);

btn_call

.setBackgroundResource(R.drawable.baike_btn_pink_right_f_96);

switchFragment(CALL_FRAGMENT_TYPE);break;

}

}

};

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值