有没有办法以编程方式禁用特定布局中的所有项目? [英] Is there a way to disable all the items in a specific layout programmatically?
问题描述
我有一个游戏,最近我为其添加了全局高分功能,这使很多人感到不安,因此我想添加禁用它的选项.我所做的就是这样:在我的设置"活动视图中,添加了以下内容:
I have A game to which I recently added a global high score functionality which made a lot of people upset so I want to add the option of disabling it. What I did was this: in my settings activity view, I added the following:
<!-- High Score Tracking -->
<LinearLayout android:layout_weight="40"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:orientation="vertical" android:padding="5dip">
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content">
<CheckBox android:text="@string/EnableHighscoreCBText"
android:id="@+id/EnableHighscoreCB" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</CheckBox>
</LinearLayout>
<!-- High score specific settings -->
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="horizontal"
android:weightSum="100" android:padding="5dip">
<CheckBox android:text="@string/EnableShareScoresCBText"
android:id="@+id/EnableShareScoresCB" android:layout_width="fill_parent"
android:layout_height="wrap_content">
</CheckBox>
<TextView android:id="@+id/DefaultPlayerNameTv"
android:layout_width="wrap_content" android:layout_weight="30"
android:layout_height="wrap_content" android:text="@string/pDefName"
android:textSize="18sp">
</TextView>
<EditText android:id="@+id/PlayerNameEt"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/pNameDefVal" android:layout_weight="70"
android:textSize="18sp" android:maxLength="20">
</EditText>
</LinearLayout>
</LinearLayout>
我想做的是,当用户取消选中启用高分跟踪"复选框时,禁用整个高分特定设置"布局.我尝试通过将 setEnabled
设置为false来禁用它,但这根本不起作用.我应该使用视图组吗?我应该运行一种刷新方法来应用更改吗?
What I want to do is to disable the entire "High score specific settings" layout when the user unchecks the enable high score tracking check box.
I tried disabling it by setting the setEnabled
to false, but that didn't work at all.
Should I be using a viewgroup or something?
Is there a refresh method I should run to apply the change?
推荐答案
显然,正确的方法是使用首选项...我现在正在阅读它,但是我认为人们应该使用试图实现这样的事情请查看以下链接以获取有关此信息的更多信息:
Apparently the correct way to do it is by using preferences... I'm reading about it now, but I think that's what people should use if they are trying to implement something like that check out the following links for more information on this:
http://android-journey.blogspot.com/2010/01/for-almost-any-application-we-need-to.html 和developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MyPreference.htmldeveloper.android.com/reference/android/preference/Preference.html
http://android-journey.blogspot.com/2010/01/for-almost-any-application-we-need-to.html and developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/MyPreference.html developer.android.com/reference/android/preference/Preference.html
这篇关于有没有办法以编程方式禁用特定布局中的所有项目?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!