随着语音的快速普及,很多应用都开始增加语音输入功能。下面是一个简单的语音和文字输入的动画切换:
布局文件:
<ViewFlipper android:id="@+id/viewFlipper1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" > <LinearLayout android:id="@+id/layout01" android:layout_width="fill_parent" android:layout_height="wrap_content" > <Button android:id="@+id/bt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:text="button" /> <ImageView android:id="@+id/image01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_btn_speak_now"/>" </LinearLayout> <LinearLayout android:id="@+id/layout02" android:layout_width="fill_parent" android:layout_height="wrap_content" android:visibility="gone" > <EditText android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" /> <ImageView android:id="@+id/image02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@android:drawable/ic_dialog_dialer" android:text="搜索"/> </LinearLayout> </ViewFlipper>ViewFlipper网上有很多介绍
逻辑实现:
viewFlipper = (ViewFlipper) findViewById(R.id.viewFlipper1); image01 = (ImageView)findViewById(R.id.image01); image02 = (ImageView)findViewById(R.id.image02); leftInAnimation = AnimationUtils.loadAnimation(this, R.anim.left_in); leftOutAnimation = AnimationUtils.loadAnimation(this, R.anim.left_out); image01.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { viewFlipper.setInAnimation(leftInAnimation); viewFlipper.setOutAnimation(leftOutAnimation); viewFlipper.showNext();//向右滑动 } }); image02.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { viewFlipper.setInAnimation(leftInAnimation); viewFlipper.setOutAnimation(leftOutAnimation); viewFlipper.showNext();//向右滑动 } });这里只提供一点思路,其实还可以用OnGestureListener进行手势滑动操作。
原文地址:http://blog.csdn.net/dsc114/article/details/34416307