gpt4 book ai didi

java - ScrollView onclick 设置可见性为Visible

转载 作者:行者123 更新时间:2023-12-02 04:56:24 26 4
gpt4 key购买 nike

我的 Android 应用程序中有这个 ScrollView ,我想做的就是将其可见性设置为消失。当您单击带有 id clickme 的此按钮时,它应该更改 ScrollView 的可见性并将其设置为可见。但是,当我尝试执行此操作时,我收到错误消息“不幸的是,ExampleApp 已停止”。基本就崩溃了。这是我的按钮代码;

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lastmonth"

android:id="@+id/lastmonth"
android:layout_marginLeft="40dp"
android:paddingLeft="40dp"
android:textSize="14sp" />

<Button

这是 ScrollView 的代码

<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/scrollview"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:layout_marginTop="5dp">

<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/scrollvisibility">

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

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/exampletext"
android:id="@+id/textView10"
android:textColor="#ff010101"
android:textSize="14sp" />

</LinearLayout>

</LinearLayout>
</ScrollView>

这是我在 Activity 中获得的代码;

final View v = null;

v.findViewById(R.id.scrollvisibility).setVisibility(View.GONE);


v.findViewById(R.id.lastMonthButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i("Testing","Button Clicked");
//v.findViewById(R.id.scrollvisibility).setVisibility(View.VISIBLE);
}
});

最佳答案

来自与 OP 的调试 session - 现在错误似乎很清楚! onClickListener onClick 方法只是覆盖当前的 fragment View ,因此在使用 v.findViewById() 时 - 它使用了错误的 View 。

v.findViewById(R.id.lastMonthButton).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i("Testing","Button Clicked");
v.findViewById(R.id.scrollvisibility).setVisibility(View.VISIBLE);
}
});

修复方法是重命名 onClick(View v) -> onClick(View view) 或实例化 Viewscroller = v.findViewById(R.id.scrollvisibility); 并从 onClick()

中访问该对象

关于java - ScrollView onclick 设置可见性为Visible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28730946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com