Android里面一些小功能实现(随时更新。。。)

1
有些app要求一行的文字呈现出不同颜色

TextView tv=(TextView)findViewById(R.id.tv);
String str="默认颜色<font color='#FF0000'>红颜色</font>";
tv.setTextSize(18);
tv.setText(Html.fromHtml(str));

2:
跳转页面的有些时候需要我们传递是一个集合类型的数据:

//跳转之前
 Intent intent = new Intent(MainActivity.this,ShowActivity.class);
                String string = textView2.getText().toString();
                Bundle bundle = new Bundle();
                bundle.putSerializable("in", (Serializable) products);
                bundle.putString("title",string);
                intent.putExtras(bundle);
                startActivity(intent);

//跳转之后
Intent intent = getIntent();
        String title = intent.getStringExtra("title");
        list = (List<Bean.RessultBean.BrandsBean.ProductsBean>) intent.getSerializableExtra("in");

最后要重点记住一点,但是 切记 你的YourObject类必须要实现Serializable接口。

3:简单的改变图片的的圆形圆角效果:
首先我这里用的是imageloder及图片记载框架

   //进行配置*//图片显示的选项配置  建造者设计模式
    public static  DisplayImageOptions getimageoptions(){
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                // 设置图片在下载期间显示的图片
                .showImageOnLoading(R.drawable.ic_launcher)
                // 设置图片Uri为空或是错误的时候显示的图片
                .showImageForEmptyUri(R.drawable.ic_launcher)
                // 设置图片加载/解码过程中错误时候显示的图片
                .showImageOnFail(R.drawable.ic_launcher)
                // 设置下载的图片是否缓存在内存中
                .cacheInMemory(true)
                // 设置下载的图片是否缓存在SD卡中
                .cacheOnDisc(true)
                // 是否考虑JPEG图像EXIF参数(旋转,翻转)
                .considerExifParams(true)
                // 设置图片以如何的编码方式显示
                .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)
                // 设置图片的解码类型//
                .bitmapConfig(Bitmap.Config.RGB_565)
                // 设置图片的解码配置
                // .decodingOptions(options)
                // .delayBeforeLoading(int delayInMillis)//int
                // delayInMillis为你设置的下载前的延迟时间
                // 设置图片加入缓存前,对bitmap进行设置
                // .preProcessor(BitmapProcessor preProcessor)
                // 设置图片在下载前是否重置,复位
                .resetViewBeforeLoading(true)
                // 是否设置为圆角,弧度为多少
               **请注意看这里**
                .displayer(new RoundedBitmapDisplayer(30))
                // 是否图片加载好后渐入的动画时间
               // .displayer(new FadeInBitmapDisplayer(100))
                // 构建完成
                .build();
        return options;

* .*displayer(new RoundedBitmapDisplayer(30))
// 是否图片加载好后渐入的动画时间
// .displayer(new FadeInBitmapDisplayer(100))
// 构建完成
这里比较重要,改变斜体字括号里面的值 ,多少自己去定。我自己试出来的,建议是圆角是30, 如果是圆形的话就360,椭圆的话就是90差不都了,如果要改变图片的样式要注意去掉下面哪一行代码。。。就是动画时间,不然没有效果的。
**
4:获取系统改变时间日期的弹框比较小简单
下面就是效果图
这里写图片描述

接下里就是代码,请注意啊:

//必须的实例化
 calendar = Calendar.getInstance();

// 这里我封装了一个方法,分开看一下
public void date(){
        button.setOnClickListener(new View.OnClickListener() {
            private DatePickerDialog datePickerDialog;
            @Override
            public void onClick(View v) {
                datePickerDialog = new DatePickerDialog(MainActivity.this,new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                        textView.setText(year+"年"+monthOfYear+"月"+dayOfMonth+"日");
                    }
                }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH));
                datePickerDialog.show();

            }
        });
    }

空间的化自己去写我就放什么布局文件!!

5:获取当前系统的版本号以及版本名
同样的我也是封装了一个方法
请看。。。。。。。

 private String getVerName(){
        PackageManager packageManager = getPackageManager();
        try {
            final PackageInfo packageInfo = packageManager.getPackageInfo(getPackageName(), 0);
            Log.i("xxx", "版本号:" + packageInfo.versionCode);
            Log.i("xxx", "版本名:" + packageInfo.versionName);

            return packageInfo.versionName;
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        return null;
    }

6:Xutils图片加载 ImageOptions,进行设置图片各种操作
简单封装了一下
请看。。。。。。。

/**
     * 加载图片
     * //通过ImageOptions.Builder().set方法设置图片的属性
     * ImageOptions imageOptions= new ImageOptions.Builder().setFadeIn(true).build(); //淡入效果
     * //ImageOptions.Builder()的一些其他属性:
     * .setCircular(true) //设置图片显示为圆形
     * .setSquare(true) //设置图片显示为正方形
     * .setCrop(true).setSize(200,200) //设置大小
     * .setAnimation(animation) //设置动画
     * .setFailureDrawable(Drawable failureDrawable) //设置加载失败的动画
     * .setFailureDrawableId(int failureDrawable) //以资源id设置加载失败的动画
     * .setLoadingDrawable(Drawable loadingDrawable) //设置加载中的动画
     * .setLoadingDrawableId(int loadingDrawable) //以资源id设置加载中的动画
     * .setIgnoreGif(false) //忽略Gif图片
     * .setParamsBuilder(ParamsBuilder paramsBuilder) //在网络请求中添加一些参数
     * .setRaduis(int raduis) //设置拐角弧度
     * .setUseMemCache(true) //设置使用MemCache,默认true
     */

与xUtils一起用的时候,代码来了

String url = "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1504071880709&di=bfc7425296c71db832e6abf4804cd7dc&imgtype=0&src=http%3A%2F%2Fc.hiphotos.baidu.com%2Fzhidao%2Fpic%2Fitem%2F1f178a82b9014a909461e9baa1773912b31bee5e.jpg";
//进行设置图片宽高以及圆角以及加载当中展示的图片
                ImageOptions options = new ImageOptions.Builder()
                        .setLoadingDrawableId(R.mipmap.ic_launcher)
                        .setSize(200, 200)
                        .setRadius(20)
                        .build();
                       //在xutils里面图片加载的操作
                x.image().bind(image, url, options);

7.banner简单实现图片的轮播
compile ‘com.youth.banner:banner:1.1.5’ 依赖包
代码实现,传进去一个图片集合数据即可:

     banner.setIndicatorGravity(Banner.CENTER);
                        //进行设置样式
                        banner.setBannerStyle(Banner.CIRCLE_INDICATOR_TITLE);
                        banner.isAutoPlay(true);
                        banner.setDelayTime(3000);
                        banner.setImages(stringlist);

8.fragment进行传值

  public Fragment getItem(int position) {
        PhotoViewFragment fragment = new PhotoViewFragment();
        //fragment传值
        Bundle bundle = new Bundle();
        bundle.putString("image", image.get(position));
        fragment.setArguments(bundle);
        return fragment;
    }

进行接受其值

  Bundle bundle = getArguments();
        String image = bundle.getString("image");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值