package net.oschina.gitapp.ui; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.os.Message; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentTransaction; import android.view.View; import android.widget.ProgressBar; import net.oschina.gitapp.AppContext; import net.oschina.gitapp.R; import net.oschina.gitapp.bean.User; import net.oschina.gitapp.common.Contanst; import net.oschina.gitapp.ui.baseactivity.BaseActionBarActivity; import net.oschina.gitapp.ui.fragments.UserInfoViewPageFragment; /** * 项目详情界面 * @created 2014-05-26 上午10:26 * @author 火蚁(http://my.oschina.net/LittleDY) * * 最后更新: * 更新内容: * 更新者: */ public class UserInfoActivity extends BaseActionBarActivity { private FragmentManager mFragmentManager; private Bundle mSavedInstanceState; private User mUser; private String mUserId; private ProgressBar mLoading; private AppContext mAppContext; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_userinfo_detail); mAppContext = getGitApplication(); this.mSavedInstanceState = savedInstanceState; initView(); } private void initView() { mFragmentManager = getSupportFragmentManager(); // 拿到传过来的project对象 Intent intent = getIntent(); mUser = (User) intent.getSerializableExtra(Contanst.USER); mUserId = intent.getStringExtra(Contanst.USERID); mLoading = (ProgressBar) findViewById(R.id.userinfo_loading); if (mUser == null) { loadData(); } else { initViewPage(); } } private void initViewPage() { mTitle = mUser.getName(); if (null == mSavedInstanceState) { FragmentTransaction ft = mFragmentManager.beginTransaction(); ft.replace(R.id.userinfo_content, UserInfoViewPageFragment.newInstance(mUser)).commit(); } } // 数据加载 private void loadData() { new AsyncTask<Void, Void, Message>() { @Override protected Message doInBackground(Void... params) { Message msg = new Message(); return msg; } @Override protected void onPreExecute() { super.onPreExecute(); mLoading.setVisibility(View.VISIBLE); } @Override protected void onPostExecute(Message msg) { super.onPostExecute(msg); mLoading.setVisibility(View.GONE); } }.execute(); } }