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 完美实现图片圆角和圆形( ...
随机推荐
- Python——类与对象,异常处理
类 class C1: def setdata(self,value): self.data = value def display(self): print(self.data) class C2( ...
- CF666E Forensic Examination [后缀自动机,线段树合并]
洛谷 Codeforces 思路 最初的想法:后缀数组+区间众数,似乎并不能过. 既然后缀数组不行,那就按照套路建出广义SAM,然后把\(S\)放在上面跑,得到以每个点结尾会到SAM上哪个节点. 询问 ...
- centos6.6 minimal cannot found a valid baseurl for repo :base
网上找了很久,说什么NDS1=8.8.8.8,DNS2=4.2.2.2 也有说改ifcfg-eth0文件的 总之我都改了,但都没用 现在我把我修改的流程发上来 1.https://blog.csdn. ...
- Chrome浏览器自动填充<input>标签的密码
问题:登录页面登录时,Chrome浏览器保存了用户名和密码,在其他页面管理其他的账户和密码时,密码框先是显示正确的密码,然后一闪而过被覆盖. 原因:问了技术主管才得知,Chrome浏览器中的,保存用户 ...
- 使用Jenkins时,如果GIT_COMMIT无变化,跳过构建
使用Jenkins时,如果GIT_COMMIT无变化,跳过构建 使用插件: conditional-buildstep A buildstep wrapping any number of ot ...
- java PageHelper 分页插件出现 Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'Id' 错误
情景: Mapper.xml定义连表查询,如果sql的字段名中有sql关键字,会导致PageHelper插件出现 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntax ...
- Python3——坦克大战
# coding=utf-8 # Version:python3.6.1 __date__ = '2018/9/20 18:51' __author__ = 'Lgsp_Harold' import ...
- Charles SSL
1 enable SSL 2 chls.pro/ssl to install certificate 3 General -> About -> Certificate Trust Se ...
- Jenkins Vue项目自动构建以及构建后续操作
Jenkins在linux上的安装教程:http://www.ityouknow.com/springboot/2017/11/11/springboot-jenkins.html 另外,关于在win ...
- java解析json的操作
import java.io.FileNotFoundException; import java.io.FileReader; import com.google.gson.JsonArray; i ...