
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
이미지 크기 설정하고 위치 잡고.. 이미지를 띄우고 싶은데
왜 이미지 Attributes에 크기 설정하는 것도 안 나오고, 위치도 못 잡고.. 이미지도 안 나오는 걸까요ㅠ
강의를 다시 봐도.. 보고 또 봐도
제가 어떤 부분을 이해 못 하고 있는지 파악이 안됩니다ㅠㅠㅠ
어 내용을 보고, 무슨 내용을 이해 해야 하는지 알려주시면 감사하겠습니다 ㅠ!
그리고, activity_main.xml에서 2가지 에러가 나오는데
1) Albumlist <androidx.recyclerview.widget.RecyclerView>: No speakable text present
=> android:contentDescription=" " 추가하여 해결하였으나.. 이렇게 해결해도 되는 것이 맞는지 싶습니다..
2) Render problem
=> 이건 어떻게 해결해야 하는 걸까요..ㅠ


작성한 코드 및 에러 메세지
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<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"
style="bold"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#E9D1D1"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="고양이 앨범"
android:textColor="#BA2E2E"
android:textColorLink="#D31053"
android:textSize="30sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.575"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/Albumlist"
android:layout_width="0dp"
android:layout_height="200dp"
android:layout_marginTop="16dp"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/cat_button"
app:layout_constraintVertical_bias="1.0"
app:spanCount="2"
>
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/iv_album1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:adjustViewBounds="true"
android:background="@drawable/round_backgroud_border_black"
android:clipToOutline="true"
android:elevation="10dp"
android:scaleType="centerCrop" />
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/iv_album2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:adjustViewBounds="true"
android:background="@drawable/round_backgroud_border_black"
android:clipToOutline="true"
android:elevation="10dp"
android:scaleType="centerCrop" />
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/iv_album3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:adjustViewBounds="true"
android:background="@drawable/round_backgroud_border_black"
android:clipToOutline="true"
android:elevation="10dp"
android:scaleType="centerCrop" />
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/iv_album4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:adjustViewBounds="true"
android:background="@drawable/round_backgroud_border_black"
android:clipToOutline="true"
android:elevation="10dp"
android:scaleType="centerCrop" />
</androidx.recyclerview.widget.RecyclerView>
<Button
android:id="@+id/cat_button"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_marginStart="133dp"
android:layout_marginEnd="131dp"
android:layout_marginBottom="300dp"
android:text="고양이 사진 받기"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.kt
package com.example.lovecat
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import api.RetrofitInstance
import com.bumptech.glide.Glide
import com.bumptech.glide.RequestBuilder
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions.withCrossFade
import com.example.lovecat.databinding.ActivityMainBinding
import kotlinx.coroutines.launch
private fun <TranscodeType> RequestBuilder<TranscodeType>.transition() {
}
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
binding.catButton.setOnClickListener {
lifecycleScope.launch {
val result = RetrofitInstance.service.getImages(num = 4)
Glide.with(this@MainActivity).load(result[0].url)
.transition(withCrossFade()).into(binding.ivAlbum1)
Glide.with(this@MainActivity).load(result[1].url)
.transition(withCrossFade()).into(binding.ivAlbum2)
Glide.with(this@MainActivity).load(result[2].url)
.transition(withCrossFade()).into(binding.ivAlbum3)
Glide.with(this@MainActivity).load(result[3].url)
.transition(withCrossFade()).into(binding.ivAlbum4)
}
}
}
}
