我想创建一个布局,其中包含一些微调器,用于从列表中选择值。
工作:当我点击微调器时,布局应该像打开门一样旋转,值列表应该从屏幕的左边缘出现。从列表中选择一个值后,布局应该再次旋转,看起来像关闭门,值列表应该到屏幕的左边缘,选择的值应该出现在微调器上。
图片链接: https://onedrive.live.com/?cid=2CC6E5A8B70750DE&id=2CC6E5A8B70750DE!751&authkey=!AIu144d4FjBpiVc&v=3
(我正在提供具有所需布局的iPhone屏幕截图。我无法在stackoverflow上传图像,因此我提供了图片网址。)
提前致谢。
活动布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/llRegistration"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_alignParentLeft="true"
android:background="#1AA0B0"
android:gravity="left" >
<Button
android:id="@+id/btnState"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Select One" />
对象动画师(flip_on_vertical.xml)
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="1000"
android:propertyName="rotationY"
android:valueFrom="0"
android:valueTo="50"
android:valueType="floatType" >
代码
LinearLayout linearLayoutRegistration;
Button btnSelect;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_new);
linearLayoutRegistration = (LinearLayout) findViewById(R.id.llRegistration);
btnSelect = (Button) findViewById(R.id.btnState);
btnSelect.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
flipOnVertical(linearLayoutRegistration);
}
});
}
public void flipOnVertical(View view) {
View image = findViewById(view.getId());
Animator anim = AnimatorInflater.loadAnimator(this,
R.animator.flip_on_vertical);
anim.setTarget(image);
anim.start();
}