仿今日头条adapter

MyBaseAdapter


package com.example.newsinfo.adapter;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.example.newsinfo.R;
import com.example.newsinfo.bean.Bean;

import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by la on 2017/9/8.
 */

public class MyBaseAdapter extends BaseAdapter{
    private List<Bean.ResultBean.DataBean> list = new ArrayList<Bean.ResultBean.DataBean>();
    private Context context;
    private DisplayImageOptions options;

    public MyBaseAdapter(List<Bean.ResultBean.DataBean> list, Context context) {
        this.list = list;
        this.context = context;
        options = new DisplayImageOptions.Builder().build();
    }

    //加载更多
    public void loadMore(List<Bean.ResultBean.DataBean> dataBean,boolean flag){
        for (Bean.ResultBean.DataBean dataBean1 : dataBean){
            if(flag){
                list.add(dataBean1);
            }else{
                list.add(0,dataBean1);
            }
        }
        notifyDataSetChanged();
    }

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

    @Override
    public Object getItem(int i) {
        return list.get(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        int type = getItemViewType(i);
        switch (type){
            case 0:
                    if(view == null){
                        view = View.inflate(context, R.layout.item,null);
                    }
                TextView tv1 = view.findViewById(R.id.tv1);
                ImageView iv1 = view.findViewById(R.id.iv1_1);
                ImageView iv2 = view.findViewById(R.id.iv1_2);
                ImageView iv3 = view.findViewById(R.id.iv1_3);

                Bean.ResultBean.DataBean bean = list.get(i);
                tv1.setText(bean.getTitle());
                ImageLoader.getInstance().displayImage(bean.getThumbnail_pic_s(),iv1);
                ImageLoader.getInstance().displayImage(bean.getThumbnail_pic_s02(),iv2);
                ImageLoader.getInstance().displayImage(bean.getThumbnail_pic_s03(),iv3);

                break;
            case 1:
                    if(view == null){
                        view = View.inflate(context, R.layout.item2, null);
                    }
                    ImageView iv2_1 = view.findViewById(R.id.iv2_1);
                    TextView tv2_1 = view.findViewById(R.id.tv2_1);

                Bean.ResultBean.DataBean bean1 = list.get(i);
                tv2_1.setText(bean1.getTitle());
                ImageLoader.getInstance().displayImage(bean1.getThumbnail_pic_s(),iv2_1);
                break;
        }
        return view;
    }
    @Override
    public int getViewTypeCount() {
        return 2;
    }
    @Override
    public int getItemViewType(int position) {
        if(position%2 == 0){
            return 0;
        }else{
            return 1;
        }
    }



    private void setImage(String path,ImageView img){
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                .cacheInMemory(true)//让图片进行内存缓存
                .cacheOnDisk(true)//让图片进行sdcard缓存
                .showImageOnFail(R.mipmap.ic_launcher_round)//当图片加载出现错误的时候显示的图片
                .showImageOnLoading(R.mipmap.ic_launcher)//图片正在加载的时候显示的图片
                .build();
        ImageLoader.getInstance().displayImage(path, img, options);
    }
}






MyFragmentAdapter

package com.example.newsinfo.adapter;

import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;

import java.util.List;

/**
 * Created by la on 2017/9/1.
 */

public class MyFragmentAdapter extends FragmentPagerAdapter{

    private String[] title;
    private List<Fragment> fragments;

    public MyFragmentAdapter(FragmentManager fm, String[] title, List<Fragment> fragments) {
        super(fm);
        this.title = title;
        this.fragments = fragments;
    }

    public void setFragments(List<Fragment> fragments) {
        this.fragments = fragments;
    }

    @Override
    public Fragment getItem(int position) {

        return fragments.get(position);
    }

    @Override
    public int getCount() {
        return fragments.size();


    }

    @Override
    public CharSequence getPageTitle(int position) {
        return title[position];
    }

    /*@Override
    public CharSequence getPageTitle(int position) {
        return title[position];
    }*/
}

内容概要:本文详细探讨了杯形谐波减速器的齿廓修形方法及寿命预测分析。文章首先介绍了针对柔轮与波发生器装配时出现的啮合干涉问题,提出了一种柔轮齿廓修形方法。通过有限元法装配仿真确定修形量,并对修形后的柔轮进行装配和运转有限元分析。基于Miner线性疲劳理论,使用Fe-safe软件预测柔轮寿命。结果显示,修形后柔轮装配最大应力从962.2 MPa降至532.7 MPa,负载运转应力为609.9 MPa,解决了啮合干涉问题,柔轮寿命循环次数达到4.28×10⁶次。此外,文中还提供了详细的Python代码实现及ANSYS APDL脚本,用于柔轮变形分析、齿廓修形设计、有限元验证和疲劳寿命预测。 适合人群:机械工程领域的研究人员、工程师,尤其是从事精密传动系统设计和分析的专业人士。 使用场景及目标:①解决杯形谐波减速器中柔轮与波发生器装配时的啮合干涉问题;②通过优化齿廓修形提高柔轮的力学性能和使用寿命;③利用有限元分析和疲劳寿命预测技术评估修形效果,确保设计方案的可靠性和可行性。 阅读建议:本文涉及大量有限元分析和疲劳寿命预测的具体实现细节,建议读者具备一定的机械工程基础知识和有限元分析经验。同时,读者可以通过提供的Python代码和ANSYS APDL脚本进行实际操作和验证,加深对修形方法和技术路线的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值