最经在写一个健康类的糖尿病有关的项目,初拿到前人写的半天品项目,感觉和自己以前的风格截然不同,但是这个项目中还有几个值得我去学习的知识点,我现在分享给大家,希望能对你们也有帮助。好了进入正题:
一、viewFliper的使用减少activity的个数 我在想着这样的好处呢,也问过一些人,说多一个activty没坏处。大家使用这个可以减少些代码的作用吧
1》定义布局文件 整个布局的架构是这样的结构
<ViewFlipper>
<LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone" >
</RelativeLayout>
</ViewFlipper>
2》 创建一个activity
2.1)创建ViewFlipper的引用,和正常的view一样findviewbyid find出来
2)第一个view中有一个事件过渡到第二个界面 在点击事件中写逻辑
3)关键点来了 怎么写逻辑
mainFlipper.showNext(); //下一个界面
mainFlipper.showPrevious();//上一个界面
4)还可以增加一些页面切换的动画效果 哈哈
mainFlipper.setInAnimation(AnimationUtils.loadAnimation(
this, R.animator.zoom_in));
mainFlipper.setOutAnimation(AnimationUtils.loadAnimation(
this, R.animator.zoom_out));
5)上动画布局文件
res/animator 或者
5.1)/ res/anim
5.2)zoom_in
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator" >
<scale
android:duration="@android:integer/config_mediumAnimTime"
android:fromXScale="2.0"
android:fromYScale="2.0"
android:pivotX="50%p"
android:pivotY="50%p"
android:toXScale="1.0"
android:toYScale="1.0" />
</set>
zoom_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/decelerate_interpolator"
android:zAdjustment="top" >
<scale
android:duration="@android:integer/config_mediumAnimTime"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:pivotX="50%p"
android:pivotY="50%p"
android:toXScale=".5"
android:toYScale=".5" />
<alpha
android:duration="@android:integer/config_mediumAnimTime"
android:fromAlpha="1.0"
android:toAlpha="0" />
</set>
二、写xml布局文件的时候,有事件响应的view,可以增加一个tag标签来区分,android:tag="31"
iamgeview 和iamgebutton 有时候写完布局的时候报了个警告[Accessibility] Missing contentDescription attribute on image,需要增加
android:contentDescription="@string/str_notesugar_before_meal" 这个属性。
就暂时整理这两个技术点吧,后面有碰到的还会总结的,希望对大家有帮助。
结束语:安卓博大精深,希望和大家共同进步~~