Теперь, когда вы знаете, чего я хочу идти, у меня проблема. Я сделал кнопки для mainactivity.kt с помощью Activity_main.xml (в папке макета). Затем я попробовал реализовать фрагменты. У меня есть тест BardFragment.kt и его макет — фрагмент_bard.xml. Но когда я запускаю приложение, если я нажимаю кнопку «Заклинание Барда», фрагмент отображается под кнопкой в списке, а не на другой странице или экземпляре.
Итак, вот файлы, которые у меня есть. (И да, это французский, я из Квебека)
MainActivity.kt
Код: Выделить всё
package com.example.dndspellbooklist
import android.os.Bundle
import android.widget.Button
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
setContentView(R.layout.activity_main)
val buttonbarde = findViewById(R.id.button_barde)
buttonbarde.setOnClickListener{
showFragment(BardeFragment())}
}
}
private fun showFragment(fragment: Fragment) {
supportFragmentManager.beginTransaction()
.replace(R.id.fragment_container, fragment)
.addToBackStack(null)
.commit()
}
}
Код: Выделить всё
Код: Выделить всё
package com.example.dndspellbooklist
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
import com.example.dndspellbooklist.R
class BardeFragment : Fragment() {
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_barde, container, false)
}
}
Код: Выделить всё
P.S. Я пробовал ChatGPT и обучающие материалы на YouTube, несколько постов здесь и там..... Но я абсолютный новичок в Kotlin и Java. Мой единственный опыт — HTML и VB
Подробнее здесь: https://stackoverflow.com/questions/785 ... oid-studio
Мобильная версия