第三方登录

package com.bwei.news.fragment;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import com.bwei.news.R;
import com.bwei.news.activity.HomeActivity;
import com.bwei.news.adapter.Lv_WoAdapter;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.display.RoundedBitmapDisplayer;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.bean.SHARE_MEDIA;

public class WoFragment extends Fragment {
    private View view;
    private ImageView iv_wo;
    private TextView tv_wo_login;
    public UMShareAPI umShareAPI;
    private String str;
    private DisplayImageOptions options;
    private ImageView iv_sliding_login;
    private TextView tv_sliding_login;
    private ListView lv_wo;
    SHARE_MEDIA platform = SHARE_MEDIA.QQ;
    

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.wo_fragment, container, false);
        
         options = new DisplayImageOptions.Builder().displayer(new RoundedBitmapDisplayer(100)).build();
        // 找控件
        findView();
        //为lv_wo准备数据
        initData();
        //为lv_wo设置适配器
        lv_wo.setAdapter(new Lv_WoAdapter(getActivity(),list));
        
        umShareAPI = UMShareAPI.get(getActivity());
        
        iv_wo.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                
                umShareAPI.doOauthVerify(getActivity(), platform,
                        umAuthListener);
                
            }
        });
        tv_wo_login.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                
                umShareAPI.doOauthVerify(getActivity(), platform,
                        umAuthListener);
            }
        });
        return view;
    }

    private void initData() {
        list = new ArrayList<String>();
        list.add("我的消息");
        list.add("金币商城");
        list.add("我的钱包");
        list.add("夜间模式");
        list.add("离线阅读");
        list.add("活动广场");
        list.add("游戏中心");
        list.add("我的邮箱");
    }

    private void findView() {
        iv_wo = (ImageView) view.findViewById(R.id.iv_wo);
        tv_wo_login = (TextView) view.findViewById(R.id.tv_wo_login);
        iv_sliding_login = (ImageView) view.findViewById(R.id.iv_sliding_login);
        tv_sliding_login = (TextView) view.findViewById(R.id.tv_sliding_login);
        lv_wo = (ListView) view.findViewById(R.id.lv_wo);
    }

    private UMAuthListener umAuthListener = new UMAuthListener() {
        @Override
        public void onComplete(SHARE_MEDIA platform, int action,
                Map<String, String> data) {
            Toast.makeText(getActivity(), "登录成功。",
                    Toast.LENGTH_SHORT).show();
            umShareAPI.getPlatformInfo(getActivity(), platform, new UMAuthListener() {

                @Override
                public void onError(SHARE_MEDIA arg0, int arg1, Throwable arg2) {
                    // TODO Auto-generated method stub
                    
                }
                
                @Override
                public void onComplete(SHARE_MEDIA arg0, int arg1, Map<String, String> map) {
                    Set<String> set = map.keySet();
                    for (String string : set) {
                        str = map.get(string);
                        Log.i("msg", str);
                        HomeActivity home = (HomeActivity) getActivity();
                        
                        if(string.equals("profile_image_url")){
                            ImageLoader.getInstance().displayImage(str, iv_wo, options);
                            home.setLoginTouxiang(str);
//                            ImageLoader.getInstance().displayImage(str, iv_sliding_login, options);
                        }
                        if(string.equals("screen_name")){
                            tv_wo_login.setText(str);
                            home.setLoginName(str);
//                            tv_sliding_login.setText(str);
                        }
                    }
                    
                }
                
                @Override
                public void onCancel(SHARE_MEDIA arg0, int arg1) {
                    // TODO Auto-generated method stub
                    
                }
            });
        }

        @Override
        public void onError(SHARE_MEDIA platform, int action, Throwable t) {
            Toast.makeText(getActivity(), "Authorize fail", Toast.LENGTH_SHORT)
                    .show();
        }
        
        @Override
        public void onCancel(SHARE_MEDIA platform, int action) {
            Toast.makeText(getActivity(), "Authorize cancel",
                    Toast.LENGTH_SHORT).show();
        }
    };
    private List<String> list;
    
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值