在Android(Kotlin)中,如果你无法从另一个类访问视图,可能是因为你没有正确引用视图或没有正确设置访问权限。以下是解决这个问题的一些常见方法:
class MainActivity : AppCompatActivity() {
private lateinit var myView: View
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
myView = findViewById(R.id.my_view)
}
fun getMyView(): View {
return myView
}
}
然后,在另一个类中,你可以通过调用MainActivity的实例来访问视图:
class AnotherClass {
fun accessView() {
val mainActivity = MainActivity()
val view = mainActivity.getMyView()
// 这里可以使用 view
}
}
class AnotherClass {
fun accessView(view: View) {
// 这里可以使用 view
}
}
然后,在视图所在的类中,通过调用另一个类的方法,并传递视图作为参数来访问视图:
class MainActivity : AppCompatActivity() {
private lateinit var myView: View
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
myView = findViewById(R.id.my_view)
val anotherClass = AnotherClass()
anotherClass.accessView(myView)
}
}
这些方法可以帮助你在Android(Kotlin)中从另一个类访问视图。根据你的具体需求,选择适合的方法。