Retrofit 实现获取往里圆角图片,且传值到另一个页面
记得加网络权限
java包:
//
compile 'jp.wasabeef:glide-transformations:3.0.1' implementation 'com.squareup.retrofit2:converter-gson:2.3.0' implementation 'com.squareup.okhttp3:okhttp:3.9.0' implementation 'com.mcxiaoke.next:recycler:1.5.0' implementation 'com.github.bumptech.glide:glide:3.7.0'
Main:
main:
public class MainActivity extends AppCompatActivity { private RecyclerView mRecycle_View;
private Adapter_OkHttp mAdapter_okHttp; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
Retrofit builder = new Retrofit.Builder()
.baseUrl("http://www.qubaobei.com/")
.addConverterFactory(GsonConverterFactory.create())
.build();
Call<Bean> okhttp = builder.create(OkHttp_zhoukao.class).getOkhttp();
okhttp.enqueue(new Callback<Bean>() {
@Override
public void onResponse(Call<Bean> call, Response<Bean> response) {
final ArrayList<Bean.DataBean> data = (ArrayList<Bean.DataBean>) response.body().getData(); mAdapter_okHttp = new Adapter_OkHttp(data,MainActivity.this); StaggeredGridLayoutManager layoutManager = new StaggeredGridLayoutManager(4,StaggeredGridLayoutManager.HORIZONTAL); mRecycle_View.setAdapter(mAdapter_okHttp); mRecycle_View.setLayoutManager(layoutManager); mAdapter_okHttp.setOnItemListner(new Adapter_OkHttp.OnItemListner() {
@Override
public void onClick(int position) {
Intent intent = new Intent(MainActivity.this,Main2Activity.class);
intent.putExtra("Pic",data.get(position).getPic());
intent.putExtra("Title",data.get(position).getTitle());
intent.putExtra("Collect_num",data.get(position).getCollect_num());
intent.putExtra("Food_str",data.get(position).getFood_str());
startActivity(intent); }
}); } @Override
public void onFailure(Call<Bean> call, Throwable t) {
Toast.makeText(MainActivity.this, "请求失败", Toast.LENGTH_SHORT).show();
}
});
} private void initView() {
mRecycle_View = (RecyclerView) findViewById(R.id.mRecycle_View);
}
}
Main2:
public class Main2Activity extends AppCompatActivity {
private ImageView img;
private TextView mTitle;
private TextView mCollect_num;
private TextView mFood_str;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
initView();
//接收的值
String Pic = getIntent().getStringExtra("Pic");
String Title = getIntent().getStringExtra("Title");
String Collect_num = getIntent().getStringExtra("Collect_num");
String Food_str = getIntent().getStringExtra("Food_str");
Glide.with(this).load(Pic)
.apply(RequestOptions.bitmapTransform(new CropCircleTransformation()))
.into(img);
mTitle.setText(Title);
mCollect_num.setText(Collect_num);
mFood_str.setText(Food_str);
Log.e("Pic",mTitle.toString());
Log.e("Pic",mCollect_num.toString());
Log.e("Pic",mFood_str.toString());
}
private void initView() {
img = (ImageView) findViewById(R.id.img);
mTitle = (TextView) findViewById(R.id.Title);
mCollect_num = (TextView) findViewById(R.id.Collect_num);
mFood_str = (TextView) findViewById(R.id.Food_str);
}
}
Adapter:
public class Adapter_OkHttp extends RecyclerView.Adapter<Adapter_OkHttp.ViewHodle> {
private ArrayList<Bean.DataBean>mList;
private Context mContext;
public Adapter_OkHttp(ArrayList<Bean.DataBean> list, Context context) {
mList = list;
mContext = context;
}
@Override
public ViewHodle onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(mContext).inflate(R.layout.item,null);
ViewHodle viewHodle = new ViewHodle(view);
return viewHodle;
}
@Override
public void onBindViewHolder(ViewHodle holder, int position) {
holder.mTextView1.setText(mList.get(position).getTitle());
holder.mTextView2.setText(mList.get(position).getCollect_num());
holder.mTextView3.setText(mList.get(position).getCollect_num());
Glide.with(mContext).load(mList.get(position).getPic())
.apply(RequestOptions.bitmapTransform(new CropCircleTransformation()))
.into(holder.mImageView);
}
@Override
public int getItemCount() {
return mList == null ? 0 :mList.size();
}
public class ViewHodle extends RecyclerView.ViewHolder {
private ImageView mImageView;
private TextView mTextView1,mTextView2,mTextView3;
public ViewHodle(View itemView) {
super(itemView);
mImageView = itemView.findViewById(R.id.mImage);
mTextView1 =itemView.findViewById(R.id.title);
mTextView2 = itemView.findViewById(R.id.title2);
mTextView3 = itemView.findViewById(R.id.title3);
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mOnItemListner !=null){
mOnItemListner.onClick(getPosition());
}
}
});
}
}
public interface OnItemListner{
void onClick(int position);
}
public OnItemListner mOnItemListner;
public void setOnItemListner(OnItemListner mOnItemListner){
this.mOnItemListner = mOnItemListner;
}
}
OkHttp:
public interface OkHttp_zhoukao {
@GET("ios/cf/dish_list.php?stage_id=1&limit=30&page=1")
Call<Bean> getOkhttp();
}
记得加
Retrofit 实现获取往里圆角图片,且传值到另一个页面的更多相关文章
- 在小程序中修改上一个页面里data中的数据调用上一个页面的方法
//获取已经打开的页面的数组 var pages = getCurrentPages(); //获取上一个页面的所有的方法和data中的数据 var lastpage = pages[pages.l ...
- jsp中点击一个图片跳转到另一个页面的方法
1.这是jsp页面中的关于图片的那段代码 <img src="images/tj1.png " id="tj1"></img> 2.跳转 ...
- asp 文章内容里的图片宽度过大 撑爆页面布局 解决办法
有时候帮朋友做做企业网站,还是asp+access来的快,也经济(不用开数据库空间),fck做的后台内容编辑功能,但是他们传图片的时候不靠谱,图片不管有多宽都直接up上来,把前台页面撑的是面目全非! ...
- 自定义view实现圆角图片
前两天想实现一个圆角图片的效果,通过网络搜索后找到一些答案.这里自己再记录一下,加深一下自己的认识和知识理解. 实现圆角图片的思路是自定义一个ImageView,然后通过Ondraw()重绘的功能,将 ...
- Android Xfermode 实战 实现圆形、圆角图片
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/42094215,本文出自:[张鸿洋的博客] 1.概述 其实这篇本来准备Androi ...
- Android Xfermode 真实 实现全面、圆角图片
转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/42094215.本文出自:[张鸿洋的博客] 1.概述 事实上这篇本来准备Andro ...
- iOS 图片文件格式判断、圆角图片
1.圆角图片 // 设置圆形图片(放到分类中使用) - (UIImage *)cutCircleImage { UIGraphicsBeginImageContextWithOptions(self. ...
- RoundedBitmapDrawable生成圆角图片
Bitmap src = BitmapFactory.decodeResource(getResources(), imageId); //获取Bitmap图片 RoundedBitmapDrawab ...
- Android BitmapShader 实战 实现圆形、圆角图片
转载自:http://blog.csdn.net/lmj623565791/article/details/41967509 1.概述 记得初学那会写过一篇博客Android 完美实现图片圆角和圆形( ...
随机推荐
- 漫画:一招学会TCP的三次握手和四次挥手
TCP三次握手和四次挥手的问题在面试中是最为常见的考点之一.很多读者都知道三次和四次,但是如果问深入一点,他们往往都无法作出准确回答. 本篇尝试使用动画来对这个知识点进行讲解,期望读者们可以更加简单地 ...
- js 对象,数组,字符串,相互转换
1:对象转换数组 let obj = {'val1':1, 'val2':2, 'val3':3, 'val4':4}; var arr = [] for (let i in obj) { //取键 ...
- tomcat 网页管理tomcat
一.设置管理员账户密码 进入tomcat安装目录 ->进入conf目录->修改user.xml->加入下面内容 模板 <role rolename="manager- ...
- JS监听浏览器的返回、后退、上一页按钮的事件方法
在实际的应用中,我们常常需要实现在移动app和浏览器中点击返回.后退.上一页等按钮实现自己的关闭页面.调整到指定页面或执行一些其它操作的需求,那在代码中怎样监听当点击微信.支付宝.百度糯米.百度钱包等 ...
- h5解决键盘谈起,输入框失去焦点
- thinkphp5简单使用redis缓存
<?php namespace app\index\controller; use think\Controller; use think\Cache\Driver\Redis; class I ...
- mac抓包工具anyproxy
本文以 mac为代理,ios手机为客户端举例. 文档地址:http://anyproxy.io/ 1.环境配置: 安装 node :参考 https://www.jianshu.com/p/3 ...
- Python学习(四十二)—— Djago-model进阶
一.QuerySet 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. Entry.objects.all()[:5] # (LIMI ...
- FlaskWeb开发:基于Python的Web应用开发实战
所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/63/ 来源:python黑洞网,专注 ...
- CMD运行命令每次都要进入很麻烦
20:35:52 win+r 输入regedit 进入注册表 找到HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor项 创建AutoRun ...