我只是试图使用具有Android约束布局的组视图来更轻松地设置几个视图的可见性。问题是我将小组的可见性变为消失或看不见的事情,它无能为力。
我已经在此线程中尝试了Pavan响应的步骤:在约束布局中切换链组可见性。但这对我没有任何改变。(我认为这是因为我不使用beta版本(
这是我的依赖项应用程序gradle文件
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:support-v4:28.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
这是我的XML文件的提取
<Button
android:text="@string/action_update"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button_update"
android:layout_marginBottom="32dp"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent"
android:layout_marginEnd="8dp" android:layout_marginRight="8dp"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp" app:layout_constraintStart_toStartOf="parent" android:textSize="18sp"/>
<android.support.constraint.Group android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/group"
android:visibility="gone"
app:constraint_referenced_ids="button_update"/>
您正在从错误的软件包中导入Group
小部件。
更改
<android.support.constraint.Group
to
<androidx.constraintlayout.widget.Group
更新版本
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
..............................................
>
<Button
android:id="@+id/button_update"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginLeft="8dp"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginBottom="32dp"
android:text="@string/action_update"
android:textSize="18sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<androidx.constraintlayout.widget.Group
android:id="@+id/group"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
app:constraint_referenced_ids="button_update" />
</androidx.constraintlayout.widget.ConstraintLayout>
事实是,我没有注意到,当我创建我的Android Studio项目时,我没有选中"使用Androidx Artifacts"框,它会自动使用您的项目使用新的Androidx库。Androidx倾向于替换支持库(请参阅此处的更多详细信息:https://developer.android.com/jetpack/androidx(
基本上,我遵循此处给出的步骤将我的项目转换为Androidx,现在一切正常。
感谢您的时间 @theapache64,现在您的代码正在工作。