我正在创建一个博客应用(ANDROID)。 这个应用程式有许多活动,例如signup_activity,signin_activity,userProfile_activity等。
我从头开始创建了signin_activity的布局,然后我复制了所有xml代码并粘贴到signup_activity中,并进行了必要的更改,因此我不必为signup_activty再次编写整个xml代码,因为signup_activity和signin_activity没有差异很大。
但是问题是,当我尝试在signin_activity中更改组件的ID(让电子邮件说EditText)时,它也会在signup_activity中更改相应EditText的ID。
我知道我可以从头开始为signup_activity编写整个xml代码,以避免这种歧义,但是我想知道为什么会这样?这是Android Studio还是其他引起问题的东西??
我当前正在使用android studio 3.3 而且我正在编辑器的帮助下使用约束布局创建活动设计。
xml代码:
enter code here
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary"
tools:context=".LoginActivity">
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="88dp"
android:layout_marginEnd="8dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@mipmap/logo" />
<EditText
android:id="@+id/edtLoginEmail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="93dp"
android:layout_marginEnd="8dp"
android:alpha="0.5"
android:ems="10"
android:hint="Email"
android:inputType="textEmailAddress"
android:padding="12dp"
android:textColor="@android:color/white"
android:textColorHint="#fff"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/imageView" />
<EditText
android:id="@+id/edtLoginPassword"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="28dp"
android:layout_marginEnd="8dp"
android:alpha="0.5"
android:ems="10"
android:hint="Password"
android:inputType="textPassword"
android:padding="12dp"
android:textColorHint="@android:color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/edtLoginEmail" />
<Button
android:id="@+id/btnCreateAccount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="32dp"
android:layout_marginEnd="8dp"
android:backgroundTint="@color/colorAccent"
android:padding="18dp"
android:text="Login to Account"
android:textAllCaps="false"
android:textColor="@android:color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/edtLoginPassword" />
<ImageView
android:id="@+id/imageView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="12dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:srcCompat="@mipmap/b" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="12dp"
android:text="Sign Up"
android:textColor="@color/colorAccent"
android:textSize="10sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.01"
app:layout_constraintStart_toEndOf="@+id/imageView3" />
</android.support.constraint.ConstraintLayout>
答案 0 :(得分:0)
我正在阅读评论,看来您也正在将此登录活动XML代码复制到另一个XML文件中。
尽管复制代码没有什么区别,但我认为造成问题的那一行是tools:context=".LoginActivity"
从另一个XML文件中删除此行。希望它应该能正常工作。只是一个建议!