您的位置:首页 > Web前端

动画,QQ登录,recycleview展示,fenxiang

2018-04-06 19:43 351 查看
///Myabapter             recycleview展示及点击条目进入web页面
package com.example.com.yuemoni.Abapter;

import android.content.Context;

import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.example.com.yuemoni.Modle.Bean;
import com.example.com.yuemoni.R;

import java.util.List;

/**
* Created by 丶未央 on 2018/4/5.
*/

public class Myabapter extends RecyclerView.Adapter{
Context context;
List<Bean.NewslistBean> list;
Webone webone;
public void Webtwo(Webone webone){
this.webone=webone;

}

public Myabapter(Context context, List<Bean.NewslistBean> list) {
this.context=context;
this.list=list;
}

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = View.inflate(parent.getContext(), R.layout.item, null);

Myviewholder myviewholder = new Myviewholder(view);

return myviewholder;
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {

Myviewholder myviewholder= (Myviewholder) holder;
myviewholder.textone.setText(list.get(position).getTitle());
myviewholder.texttwo.setText(list.get(position).getCtime());
Glide.with(context).load(list.get(position).getPicUrl()).into(myviewholder.imageview);
myviewholder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
webone.webones(position);
}
});
}

@Override
public int getItemCount() {
return list.size();
}

class Myviewholder extends RecyclerView.ViewHolder{

private final ImageView imageview;
private final TextView textone;
private final TextView texttwo;

public Myviewholder(View itemView) {
super(itemView);
imageview = itemView.findViewById(R.id.imageview);
textone = itemView.findViewById(R.id.textone);
texttwo = itemView.findViewById(R.id.texttwo);
}
}
public  interface Webone{
void webones(int i);
};

}
/////Molder层
package com.example.com.yuemoni.Modle;import com.example.com.yuemoni.Presenter.Datepresenter;/*** Created by 丶未央 on 2018/4/4.*/public interface Getmodle {void Getdate(String  url, Datepresenter datepresenter);}
////
package com.example.com.yuemoni.Modle;import com.example.com.yuemoni.Presenter.Datepresenter;import com.example.com.yuemoni.Util.OkhtttpUtils;import com.google.gson.Gson;import java.io.IOException;i4000mport java.util.List;import okhttp3.Call;import okhttp3.Callback;import okhttp3.Response;/*** Created by 丶未央 on 2018/4/4.*/public class Mygetmodle implements Getmodle {@Overridepublic void Getdate(String url, final Datepresenter datepresenter) {//请求数据OkhtttpUtils.doGet(url, new Callback() {@Overridepublic void onFailure(Call call, IOException e) {}@Overridepublic void onResponse(Call call, Response response) throws IOException {String string = response.body().string();Gson gson = new Gson();Bean bean = gson.fromJson(string, Bean.class);List<Bean.NewslistBean> list = bean.getNewslist();datepresenter.success(list);}});}}
////P层
package com.example.com.yuemoni.Presenter;import com.example.com.yuemoni.Modle.Bean;import java.util.List;/*** Created by 丶未央 on 2018/4/4.*/public interface Datepresenter {void success(List<Bean.NewslistBean> list);void errror();}
/////
package com.example.com.yuemoni.Presenter;import com.example.com.yuemoni.Modle.Bean;import com.example.com.yuemoni.Modle.Mygetmodle;import com.example.com.yuemoni.View.Dateview;import java.util.List;/*** Created by 丶未央 on 2018/4/4.*/public class Mydatepresenter implements Datepresenter{Mygetmodle mygetmodle;Dateview dateview;public Mydatepresenter(Dateview dateview){this.dateview=dateview;mygetmodle = new Mygetmodle();};@Overridepublic void success(List<Bean.NewslistBean> list) {dateview.tobackhome(list);}@Overridepublic void errror() {}public void getNet(String url) {mygetmodle.Getdate(url,this);}}
/////////View 层动画播放
package com.example.com.yuemoni.View;import android.animation.Animator;import android.animation.AnimatorListenerAdapter;import android.animation.ObjectAnimator;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.ImageView;import com.example.com.yuemoni.R;public class MainActivity extends AppCompatActivity {private ImageView xian;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);xian = findViewById(R.id.xian);}public void dong(final View view) {ObjectAnimator mator=ObjectAnimator.ofFloat(view,"rotationY", 0.0F, 90.0F);mator.setDuration(3000);mator.start();mator.addListener(new AnimatorListenerAdapter() {@Overridepublic void onAnimationEnd(Animator animation) {super.onAnimationEnd(animation);xian.setVisibility(View.VISIBLE);ObjectAnimator mator1=ObjectAnimator.ofFloat(view,"rotationY", 0.0F, 90.0F);mator1.setDuration(3000);mator1.start();}});}public void fan(View view) {Intent intent = new Intent(MainActivity.this,Two.class);startActivity(intent);}}
////////////////////////////recycleview  web传值
package com.example.com.yuemoni.View;import android.content.Intent;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.support.v7.widget.DefaultItemAnimator;import android.support.v7.widget.LinearLayoutManager;import android.support.v7.widget.RecyclerView;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.view.View;import android.widget.AbsListView;import com.example.com.yuemoni.Abapter.Myabapter;import com.example.com.yuemoni.Modle.Bean;import com.example.com.yuemoni.Presenter.Mydatepresenter;import com.example.com.yuemoni.R;import java.util.List;/*** Created by 丶未央 on 2018/4/4.*/public class One extends AppCompatActivity implements Dateview,Myabapter.Webone{String url="http://api.tianapi.com/startup/?key=71e58b5b2f930eaf1f937407acde08fe&num=10";List<Bean.NewslistBean> list;private Handler handler=new Handler(){@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);list = (List<Bean.NewslistBean>) msg.obj;recycler.setLayoutManager(new LinearLayoutManager(One.this,LinearLayoutManager.VERTICAL,false));Myabapter myabapter = new Myabapter(One.this, list);recycler.setAdapter(myabapter);myabapter.Webtwo(One.this);}};private RecyclerView recycler;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.one);recycler = findViewById(R.id.recycler);Mydatepresenter mydatepresenter = new Mydatepresenter(this);mydatepresenter.getNet(url);}@Overridepublic void tobackhome(List<Bean.NewslistBean> list) {Message msg = new Message();msg.obj=list;handler.sendMessage(msg);}@Overridepublic void webones(int i) {Intent intent = new Intent(One.this,Three.class);String url = list.get(i).getUrl();intent.putExtra("url", url);startActivity(intent);}}
////////////////////////
QQ登录
package com.example.com.yuemoni.View;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ImageView;import com.example.com.yuemoni.R;import com.umeng.socialize.UMAuthListener;import com.umeng.socialize.UMShareAPI;import com.umeng.socialize.bean.SHARE_MEDIA;import java.util.Map;/*** Created by 丶未央 on 2018/4/5.*/public class Two extends AppCompatActivity {private ImageView xian;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.two);xian = findViewById(R.id.xian);}public void qq(View view) {Intent intent = new Intent(Two.this, One.class);startActivity(intent);}public void dl(View view) {UMAuthListener authListener=new UMAuthListener(){@Overridepublic void onStart(SHARE_MEDIA share_media) {}@Overridepublic void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) {}@Overridepublic void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {}@Overridepublic void onCancel(SHARE_MEDIA share_media, int i) {}};UMShareAPI.get(Two.this).getPlatformInfo(Two.this, SHARE_MEDIA.QQ,authListener);}}
///////////////////////////////
分享
package com.example.com.yuemoni.View;import android.content.Intent;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.webkit.WebSettings;import android.webkit.WebView;import android.webkit.WebViewClient;import android.widget.Button;import android.widget.Toast;import com.example.com.yuemoni.R;import com.umeng.socialize.ShareAction;import com.umeng.socialize.UMShareAPI;import com.umeng.socialize.UMShareListener;import com.umeng.socialize.bean.SHARE_MEDIA;import com.umeng.socialize.media.UMWeb;public class Three extends AppCompatActivity {private WebView webs;private Button btone;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_three);webs = findViewById(R.id.webs);btone = findViewById(R.id.btone);Intent intent = getIntent();String url = intent.getStringExtra("url");webs.loadUrl(url);WebSettings settings = webs.getSettings();settings.setJavaScriptEnabled(true);webs.setWebViewClient(new WebViewClient());}public void btone(View view) {UMWeb web = new UMWeb("http://www.baidu.com");web.setTitle("中华小二货");//标题web.setDescription("鲍成龙");//描述new ShareAction(Three.this).withMedia(web).setDisplayList(SHARE_MEDIA.SINA,SHARE_MEDIA.QQ,SHARE_MEDIA.WEIXIN).setCallback(shareListener).open();}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);}private UMShareListener shareListener = new UMShareListener() {/*** @descrption 分享开始的回调* @param platform 平台类型*/@Overridepublic void onStart(SHARE_MEDIA platform) {}/*** @descrption 分享成功的回调* @param platform 平台类型*/@Overridepublic void onResult(SHARE_MEDIA platform) {Toast.makeText(Three.this,"成功了",Toast.LENGTH_LONG).show();}/*** @descrption 分享失败的回调* @param platform 平台类型* @param t 错误原因*/@Overridepublic void onError(SHARE_MEDIA platform, Throwable t) {Toast.makeText(Three.this,"失败"+t.getMessage(),Toast.LENGTH_LONG).show();}/*** @descrption 分享取消的回调* @param platform 平台类型*/@Overridepublic void onCancel(SHARE_MEDIA platform) {Toast.makeText(Three.this,"取消了",Toast.LENGTH_LONG).show();}};}
、、、、友盟分享包
package com.example.com.yuemoni.View;import android.app.Application;import com.umeng.commonsdk.UMConfigure;import com.umeng.socialize.PlatformConfig;/*** Created by 丶未央 on 2018/4/5.*/public class apppppp extends Application {{PlatformConfig.setWeixin("wx967daebe835fbeac","5bb696d9ccd75a38c8a0bfe0675559b3");PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");PlatformConfig.setSinaWeibo("3921700954", "04b48b094faeb16683c32669824ebdad","http://sns.whalecloud.com");}@Overridepublic void onCreate() {super.onCreate();// UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "1fe6a20054bcef865eeb0991ee84525b");UMConfigure.init(this,"5a12384aa40fa3551f0001d1","umeng",UMConfigure.DEVICE_TYPE_PHONE,"");//58edcfeb310c93091c000be2 5965ee00734be40b580001a0// UMShareAPI.get(this);}}
、、、、、、、权限
<!-- 必须的权限 --><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.READ_PHONE_STATE" /><uses-permission android:name="android.permission.INTERNET" /><!-- 推荐的权限 --><!-- 添加如下权限,以便使用更多的第三方SDK和更精准的统计数据 --><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- //新浪--><activityandroid:name="com.umeng.socialize.media.WBShareCallBackActivity"android:configChanges="keyboardHidden|orientation"android:theme="@android:style/Theme.Translucent.NoTitleBar"android:exported="false"android:screenOrientation="portrait" ></activity><activity android:name="com.sina.weibo.sdk.web.WeiboSdkWebActivity"android:configChanges="keyboardHidden|orientation"android:exported="false"android:windowSoftInputMode="adjustResize"></activity><activityandroid:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"android:launchMode="singleTask"android:name="com.sina.weibo.sdk.share.WbShareTransActivity"><intent-filter><action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" /><category android:name="android.intent.category.DEFAULT" /></intent-filter></activity><!--qq--><activityandroid:name="com.tencent.tauth.AuthActivity"android:launchMode="singleTask"android:noHistory="true" ><intent-filter><action android:name="android.intent.action.VIEW" /><category android:name="android.intent.category.DEFAULT" /><category android:name="android.intent.category.BROWSABLE" /><data android:scheme="tencent100424468" /></intent-filter></activity><activityandroid:name="com.tencent.connect.common.AssistActivity"android:theme="@android:style/Theme.Translucent.NoTitleBar"android:configChanges="orientation|keyboardHidden|screenSize"/><activityandroid:name="com.umeng.socialize.editorpage.ShareActivity"android:theme="@android:style/Theme.NoTitleBar"android:excludeFromRecents="true"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: