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

来源:互联网 发布:小说生成器软件 编辑:程序博客网 时间:2024/06/15 14:32

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");
原创粉丝点击