не прогружается фото на kotlin

я делаю приложение с регистрацией и входом в аккаунт и там есть кнопка avatar когда ее нажимаешь должна показываться фото(пока что только мое, потом пользователь сможет выбирать свое) но фото просто не видно, чтобы проверить в чем ошибка я поставил visibility GONE и кнопка сдвигается. я нажимаю на кнопку она двигается чтобы появилась картинка но картинка не появляется. мой код в sign_in_up_activity(там и должна быть картинка:

    <androidx.constraintlayout.widget.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:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:backgroundTint="@color/white"
    tools:context=".ActivitySignUpIn">

    <EditText
        android:id="@+id/editTextPassword"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:background="@drawable/rounded_edittext_bg"
        android:ems="10"
        android:hint="@string/password_hint"
        android:inputType="text"
        android:minHeight="48dp"
        app:layout_constraintEnd_toEndOf="@+id/editTextLogin"
        app:layout_constraintStart_toStartOf="@+id/editTextLogin"
        app:layout_constraintTop_toBottomOf="@+id/editTextLogin" />

    <EditText
        android:id="@+id/editTextFirstName"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:background="@drawable/rounded_edittext_bg"
        android:ems="10"
        android:hint="@string/first_name_hint"
        android:inputType="text"
        android:minHeight="48dp"
        app:layout_constraintEnd_toEndOf="@+id/editTextPassword"
        app:layout_constraintStart_toStartOf="@+id/editTextPassword"
        app:layout_constraintTop_toBottomOf="@+id/editTextPassword" />

    <EditText
        android:id="@+id/editTextLastName"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:background="@drawable/rounded_edittext_bg"
        android:ems="10"
        android:hint="@string/last_name_hint"
        android:inputType="text"
        android:minHeight="48dp"
        app:layout_constraintEnd_toEndOf="@+id/editTextFirstName"
        app:layout_constraintStart_toStartOf="@+id/editTextFirstName"
        app:layout_constraintTop_toBottomOf="@+id/editTextFirstName" />

    <EditText
        android:id="@+id/editTextLogin"
        android:layout_width="290dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="76dp"
        android:background="@drawable/rounded_edittext_bg"
        android:ems="10"
        android:hint="@string/login_hint"
        android:inputType="text"
        android:minHeight="48dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.495"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/buttonAvatar" />

    <EditText
        android:id="@+id/editTextPatronymic"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:background="@drawable/rounded_edittext_bg"
        android:ems="10"
        android:hint="@string/patronymic_hint"
        android:inputType="text"
        android:minHeight="48dp"
        app:layout_constraintEnd_toEndOf="@+id/editTextLastName"
        app:layout_constraintStart_toStartOf="@+id/editTextLastName"
        app:layout_constraintTop_toBottomOf="@+id/editTextLastName" />

    <TextView
        android:id="@+id/text_login"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/login"
        android:textSize="17sp"
        app:layout_constraintBottom_toTopOf="@+id/editTextLogin"
        app:layout_constraintEnd_toEndOf="@+id/editTextLogin"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/editTextLogin" />

    <TextView
        android:id="@+id/text_password"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/password"
        android:textSize="17sp"
        app:layout_constraintBottom_toTopOf="@+id/editTextPassword"
        app:layout_constraintEnd_toEndOf="@+id/editTextPassword"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/editTextPassword" />

    <TextView
        android:id="@+id/textFirstName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/first_name"
        android:textSize="17sp"
        app:layout_constraintBottom_toTopOf="@+id/editTextFirstName"
        app:layout_constraintEnd_toEndOf="@+id/editTextFirstName"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/editTextFirstName" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/last_name"
        android:textSize="17sp"
        app:layout_constraintBottom_toTopOf="@+id/editTextLastName"
        app:layout_constraintEnd_toEndOf="@+id/editTextLastName"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/editTextLastName" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/patronymic"
        android:textSize="17sp"
        app:layout_constraintBottom_toTopOf="@+id/editTextPatronymic"
        app:layout_constraintEnd_toEndOf="@+id/editTextPatronymic"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/editTextPatronymic" />

    <Button
        android:id="@+id/buttonSignUp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="36dp"
        android:onClick="onClickDone"
        android:text="@string/sign_up"
        app:layout_constraintEnd_toEndOf="@+id/editTextPatronymic"
        app:layout_constraintHorizontal_bias="0.497"
        app:layout_constraintStart_toStartOf="@+id/editTextPatronymic"
        app:layout_constraintTop_toBottomOf="@+id/editTextPatronymic" />

    <ImageView
        android:id="@+id/imageAvatar"
        android:layout_width="121dp"
        android:layout_height="118dp"
        android:layout_marginTop="16dp"
        android:visibility="gone"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.498"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:srcCompat="@drawable/sergey" />

    <Button
        android:id="@+id/buttonAvatar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:onClick="onCLickAvtar"
        android:text="@string/Avatar"
        android:visibility="visible"
        app:layout_constraintEnd_toEndOf="@+id/imageAvatar"
        app:layout_constraintHorizontal_bias="0.473"
        app:layout_constraintStart_toStartOf="@+id/imageAvatar"
        app:layout_constraintTop_toBottomOf="@+id/imageAvatar" />

</androidx.constraintlayout.widget.ConstraintLayout>

ActivitySignUpIn:

class ActivitySignUpIn : AppCompatActivity() {
    lateinit var bindingClass: SignUpInActivityBinding
    private var signState = "empty"

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        bindingClass = SignUpInActivityBinding.inflate(layoutInflater)
        setContentView(bindingClass.root)

        signState = intent.getStringExtra(Keys.Sign_State)!!
        if(signState == Keys.Sign_In_State){
            bindingClass.editTextPatronymic.visibility = View.GONE
            bindingClass.editTextLastName.visibility = View.GONE
            bindingClass.editTextFirstName.visibility = View.GONE
            bindingClass.buttonAvatar.visibility = View.GONE
            bindingClass.textView2.visibility = View.GONE
            bindingClass.textView5.visibility = View.GONE
            bindingClass.textFirstName.visibility = View.GONE
            bindingClass.buttonSignUp.text = getString(R.string.sign_in)
        }
    }

    fun onClickDone(view: View){
        if(signState == Keys.Sign_In_State){

        }
    }

    fun onCLickAvtar(view: View){
        bindingClass.imageAvatar.visibility = View.VISIBLE
    }

}

Activity_Main:

<androidx.constraintlayout.widget.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:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onCLickSignUp"
        android:text="@string/sign_up"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="@+id/button2"
        app:layout_constraintStart_toStartOf="@+id/button2"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.52" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="onCLickSignIn"
        android:text="@string/sign_in"
        app:layout_constraintBottom_toTopOf="@+id/button"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.95" />

    <TextView
        android:id="@+id/textView7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="30dp"
        android:text="@string/MainText"
        app:layout_constraintBottom_toTopOf="@+id/button2"
        app:layout_constraintEnd_toEndOf="@+id/button2"
        app:layout_constraintStart_toStartOf="@+id/button2" />

</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity:

class MainActivity : AppCompatActivity() {
    lateinit var bindingClass : ActivityMainBinding
    private var login: String = "Empty"
    private var password: String = "Empty"
    private var Name: String = "Empty"
    private var Name2: String = "Empty"
    private var Name3: String = "Empty"
    private var AvatarImageID: Int = 0

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        bindingClass = ActivityMainBinding.inflate(layoutInflater)
        setContentView(bindingClass.root)
    }

    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)

        if(requestCode == Keys.RequestCodeSignIn){

        }else if(requestCode == Keys.RequestCodeSignUp){

        }
    }

    fun onCLickSignIn(view: View){
        val intent = Intent(this, ActivitySignUpIn::class.java)
        intent.putExtra(Keys.Sign_State, Keys.Sign_In_State)
        startActivityForResult(intent, requestCode = Keys.RequestCodeSignIn)
    }

    fun onCLickSignUp(view: View){
        val intent = Intent(this, ActivitySignUpIn::class.java)
        intent.putExtra(Keys.Sign_State, Keys.Sign_Up_State)
        startActivityForResult(intent, requestCode = Keys.RequestCodeSignUp)
    }
}

Ответы (1 шт):

Автор решения: Eugene Krivenja

Откуда же ей там взяться, ведь у вас стоит

tools:srcCompat="@drawable/sergey"

что означает "показывать только в визуальном редакторе".

Этим атрибутом пользуются разработчики для предпросмотра дизайна. Добавьте стандартный

android:src="@drawable/sergey"

или

app:srcCompat="@drawable/sergey"

и все появится.

→ Ссылка