单击图像按钮打开滑块

时间:2012-02-10 11:41:36

标签: android slider

我有一些问题

enter image description here

这个我的android版本的页脚栏现在当我想要的时候我点击i按钮然后滑块应该打开另一个按钮,如

enter image description here

我怎么能在android

中这样做

我已尝试使用警告对话框进行一些工作,但它无法正常工作

任何人都知道我该怎么做

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:3)

执行此类操作的一种方法是使布局包含要显示或隐藏的按钮行。然后,您可以使用OnClickListener设置按钮单击以显示或隐藏布局。所以活动中的这样的东西可以起作用:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button toggleButton = (Button)findViewById(R.id.toggle_button);

    //Set click listener to change the bar visiblity
    toggleButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

            LinearLayout bar = (LinearLayout)findViewById(R.id.toggle_bar);
            int visibility = bar.getVisibility();

            //Hide or show the bar according to it's current visibility
            if (visibility == View.VISIBLE) {
                bar.setVisibility(View.GONE);
            } else {
                bar.setVisibility(View.VISIBLE);
            }
        }

    });                   
}

简单的示例布局main.xml看起来有点像这样:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="50.0dp"
    android:orientation="horizontal" >
    <Button
        android:id="@+id/toggle_button"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="Toggle visibility"
    />
    <LinearLayout
        android:id="@+id/toggle_bar"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="horizontal" >

        <Button 
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="Button1"
        />
        <Button 
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="Button2"
        />
        <Button 
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="Button2"
        />
    </LinearLayout>
</LinearLayout>

如果您还需要在可见性更改时为按钮行设置动画,则应该查看animation resources

答案 1 :(得分:0)

你应该首先在anim文件夹中有一个slide_right_in.xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="100%p" android:toXDelta="0"  android:duration="500" />
</set>

和slide_right_out.xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p"  android:duration="500" />
</set>

在你的情况下你需要左右进出动画,所以你应该根据需要更改上面的代码。 然后在动画对象中加载动画,然后在上面的答案中设置可见性之前启动它:

 Animation slide_right_in = AnimationUtils.loadAnimation(this,  R.anim.slide_right_in);
 toggle_bar.startAnimation(slide_right_in);