显示滚动视图按钮单击事件

时间:2013-07-09 09:50:38

标签: android android-imageview android-button android-scrollview

我在scrollview下有图片。我有一个单击事件的按钮。当我点击按钮时,我需要显示scrollview。但是当我安装应用程序时,scrollview会自动显示页面底部。

代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".Scroll" >

    <HorizontalScrollView
        android:id="@+id/scrl"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="250dp" >

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access"
                />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access1"


                 />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"

                android:background="@drawable/access2"
                />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access3"
                 />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access4"
                />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access5"
                 />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access6"
                 />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access7"
                 />

            <Button
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/access8"
                 />


        </LinearLayout>
    </HorizontalScrollView>



    <Button 
        android:id="@+id/btn"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"/>    
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" />

</RelativeLayout>

按钮点击:

Button btn=(Button)findViewById(R.id.btn);

btn.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

    HorizontalScorllView    srl=(HorizontalScrollView)findViewById(R.id.scrl);      

            }



        });

2 个答案:

答案 0 :(得分:1)

默认情况下,将android:id =“@ + id / scrl”的visiblity设置为xml中不可见。 点击按钮后 Horizo​​ntalScorllView srl =(Horizo​​ntalScrollView)findViewById(R.id.scrl);
将srl的可见性设置为可见。

答案 1 :(得分:0)

您应该将Horizo​​ntalScrollView设置为不可见:

<HorizontalScrollView
    android:id="@+id/scrl"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:visibility="invisible"
    android:layout_marginTop="250dp" >

并在你的onClick方法中:

public void onClick(View v) {

     HorizontalScorllView    srl=(HorizontalScrollView)findViewById(R.id.scrl);  
     srl.setVisibility(View.VISIBLE);

}