package com.sogou.fastomiai; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageButton; import android.widget.TextView; import android.widget.Toast; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.NetworkImageView; import com.sogou.fastomiai.controller.SessionManager; import com.sogou.fastomiai.model.FindUserInfo; import com.sogou.fastomiai.util.Constants; import com.sogou.fastomiai.util.NetworkRequest; import com.sogou.fastomiai.util.NetworkUtil; public class TargetInfoActivity extends Activity { public static final String EXTRA_UID = "extra_uid"; public static final String EXTRA_HEAD = "extra_head"; private ImageButton mBtnBack = null; private String mUID; private String mHeadUrl; private NetworkImageView mHeadImage; private NetworkImageView mPhoto1; private NetworkImageView mPhoto2; private NetworkImageView mPhoto3; private NetworkImageView mPhoto4; private TextView mTag1; private TextView mTag2; private TextView mTag3; private TextView mTag4; private TextView mTag5; private TextView mTitle; private TextView mTargetName; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_target_info); mBtnBack = (ImageButton) findViewById(R.id.btn_target_back); mBtnBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(getApplicationContext(), BrowseActivity.class); startActivity(intent); finish(); } }); mHeadImage = (NetworkImageView)findViewById(R.id.image_my_photo); mPhoto1 = (NetworkImageView)findViewById(R.id.photo1); mPhoto2 = (NetworkImageView)findViewById(R.id.photo2); mPhoto3 = (NetworkImageView)findViewById(R.id.photo3); mPhoto4 = (NetworkImageView)findViewById(R.id.photo4); mTag1 = (TextView)findViewById(R.id.text_tag1); mTag2 = (TextView)findViewById(R.id.text_tag2); mTag3 = (TextView)findViewById(R.id.text_tag3); mTag4 = (TextView)findViewById(R.id.text_tag4); mTag5 = (TextView)findViewById(R.id.text_tag5); mTitle = (TextView)findViewById(R.id.text_target_title); mTargetName = (TextView)findViewById(R.id.text_target_name); Intent intent = getIntent(); if (intent != null) { mUID = intent.getStringExtra(EXTRA_UID); mHeadUrl = intent.getStringExtra(EXTRA_HEAD); mHeadImage.setImageUrl(mHeadUrl, NetworkRequest.getInstance(getApplicationContext()).getImageLoader()); SessionManager sm = SessionManager.getInstance(this.getApplicationContext()); String token = sm.getToken(); if (token.isEmpty()) { } else { Map<String, String> params = new HashMap<String, String>(); params.put(Constants.TOKEN, token); params.put(Constants.UID, mUID); String url = NetworkUtil.getUrl(Constants.FIND_USER_URL, params); NetworkRequest.get(url, FindUserInfo.class, new Response.Listener<FindUserInfo>() { @Override public void onResponse(FindUserInfo info) { if (info != null && info.isSuccess()) { ArrayList<String> photos = info.data.photos; if (photos != null) { int size = photos.size(); if (size >= 4) { mPhoto4.setImageUrl( photos.get(3), NetworkRequest .getInstance( getApplicationContext()) .getImageLoader()); } if (size >= 3) { mPhoto3.setImageUrl( photos.get(2), NetworkRequest .getInstance( getApplicationContext()) .getImageLoader()); } if (size >= 2) { mPhoto2.setImageUrl( photos.get(1), NetworkRequest .getInstance( getApplicationContext()) .getImageLoader()); } if (size >= 1) { mPhoto1.setImageUrl( photos.get(0), NetworkRequest .getInstance( getApplicationContext()) .getImageLoader()); } } ArrayList<String> tags = info.data.tags; if (tags != null) { int tagCount = tags.size(); if (tagCount > 5) { tagCount = 5; } switch (tagCount) { case 5: mTag5.setText(tags.get(4)); mTag5.setVisibility(View.VISIBLE); case 4: mTag4.setText(tags.get(3)); mTag4.setVisibility(View.VISIBLE); case 3: mTag3.setText(tags.get(2)); mTag3.setVisibility(View.VISIBLE); case 2: mTag2.setText(tags.get(1)); mTag2.setVisibility(View.VISIBLE); case 1: mTag1.setText(tags.get(0)); mTag1.setVisibility(View.VISIBLE); break; } } String title = String.format(getResources().getString(R.string.target_title_format), info.data.name); mTitle.setText(title); String targetName = String.format(getResources().getString(R.string.target_name_format), info.data.name); mTargetName.setText(targetName); } else { Toast.makeText(getApplicationContext(), "获取用户详情失败", Toast.LENGTH_SHORT).show(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { Toast.makeText(getApplicationContext(), "获取用户详情失败", Toast.LENGTH_SHORT).show(); } }, false); } } } }