我已经更新了我的活动类作为片段,但我不知道如何更新照片中的部分。
我的代码:
package com.nisaefendioglu.recentearthquakes.fragment
import android.os.Bundle
import android.util.Log
import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.nisaefendioglu.recentearthquakes.R
import com.nisaefendioglu.recentearthquakes.RecyclerAdapter
import com.nisaefendioglu.recentearthquakes.model.EarthquakeModelItem
import com.nisaefendioglu.recentearthquakes.service.ApiClient
import kotlinx.android.synthetic.main.earthquake.*
import retrofit2.Call
import retrofit2.Callback
import retrofit2.Response
class Earthquake : Fragment((R.layout.earthquake)) {
private var listUsers: MutableList<EarthquakeModelItem> = mutableListOf<EarthquakeModelItem>()
private var adapter: RecyclerAdapter? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
listUsers = mutableListOf()
recyclerview.layoutManager = LinearLayoutManager(this@Earthquake)
adapter = RecyclerAdapter(
this,
listUsers
)
recyclerview.adapter = adapter
getUsersData()
}
private fun getUsersData() {
ApiClient.apiService.getEarthquakes().enqueue(object :
Callback<MutableList<EarthquakeModelItem>> {
override fun onFailure(call: Call<MutableList<EarthquakeModelItem>>, t: Throwable) {
Log.e("error", t.localizedMessage)
}
override fun onResponse(
call: Call<MutableList<EarthquakeModelItem>>,
response: Response<MutableList<EarthquakeModelItem>>
) {
val usersResponse = response.body()
listUsers.clear()
usersResponse?.let { listUsers.addAll(it) }
adapter?.notifyDataSetChanged()
}
})
}
}
主要活动。kt
package com.nisaefendioglu.recentearthquakes.view
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.fragment.app.Fragment
import com.nisaefendioglu.recentearthquakes.R
import com.nisaefendioglu.recentearthquakes.fragment.Earthquake
import com.nisaefendioglu.recentearthquakes.fragment.InfoFragment
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val info= InfoFragment()
val earthquake = Earthquake()
//val maps = MapFragment()
setCurrentFragment(info)
bottomNavigationView.setOnNavigationItemSelectedListener {
when(it.itemId){
R.id.infoFragment ->setCurrentFragment(info)
R.id.earthquakeFragment ->setCurrentFragment(earthquake)
// R.id.mapsFragment->setCurrentFragment(maps)
}
true
}
}
private fun setCurrentFragment(fragment: Fragment)=
supportFragmentManager.beginTransaction().apply {
replace(R.id.flFragment,fragment)
commit()
}
}
错误:e:/Users/nisa/AndroidStudioProjects/RecentEarthquakes/app/src/main/java/com/nisaefendioglu/RecentEarthquakes/fragment/地震。kt:(26,58):类型不匹配:推断的类型是地震,但是上下文!这是意料之中的
e:/Users/nisa/AndroidStudioProjects/RecentEarthquakes/app/src/main/java/com/nisaefendioglu/RecentEarthquakes/fragment/地震。kt:(29,13):类型不匹配:推断的类型是地震,但上下文是预期的
我已经更新了我的活动类作为片段,但是我不知道如何更新照片中的部分。你能帮我吗?
我已经更新了我的活动类作为片段,但是我不知道如何更新照片中的部分。你能帮我吗?
使用requireContext()
从片段中获取上下文。
如果你得到了NullPointerExctive
,那是因为你调用onCreate()
里面的回收器View
方法,正如文档所说,
此时,您不能依赖于活动的内容视图层次结构等内容。
如果您正在使用一个片段,您应该始终在onCreateView()
方法中调用您的View
。
我对Android很陌生,我试图弄清楚片段和活动应该如何协同工作。我有一个非常丑陋的布局。1个活性和1个“根”片段。当用户单击左侧菜单时,片段被片段管理器替换。 我假设上面的代码应该用新的片段替换当前片段。片段实际上总是空的。我不知道为什么。 在onCreateView的RootFrament Fragment1是默认创建的。 在rootFragment的onCreateView中,rootFra
问题内容: 我要在我的下一个Android项目中使用Retrofit 2.1.0。我想使用设计模式,因此为每个REST调用创建单独的类,即 IBalanceService.java BalanceRestClient.java BalanceActivity.java 如何通过onResponse()更新活动/片段中的UI? 附加信息: 最小SDK:19个 目标SDK:23个 使用OkHttp和g
问题内容: 我基本上有一个具有多个选项卡的MainActivity。每个选项卡都是一个ShowListFragment,它扩展了Fragment。现在,每个选项卡都包含我从数据库中获取的数据。我有一个MOVE按钮,可将数据从每个片段的一个选项卡移动到另一个选项卡: 片段不会直接更新,而是在选项卡之间滑动了几下(恰好3次)。单击按钮后如何强制片段立即更新?我不想通过ViewPager中的onPage
我基本上是在中更新一个值,并使用将其发送到片段。所有片段都应该在上显示相同的值。 我的问题是我的应用程序有3个片段页面,只有中间的页面(Fragment_B)在更新... 为什么所有的片段不同时更新?该值从不显示在Fragment_A和fragment_c上。 应该更新所有的片段,但它只更新片段B。但是我试图调试这个问题,并创建了和SetText,它适用于每个片段。我不知道为什么会这样。有人能帮帮
我正在努力练习techniqual测试,我必须计算DNA序列中的字符数,但无论我做什么,计数器都不会更新,这真的很令人沮丧,因为我用ruby学习代码,它会更新,但Java似乎有一个问题。我知道我的语法有问题,但是我怎么也想不出来。 如果满足条件并重新分配值,它只会一直返回零,而不是加一。
问题内容: 我想将自己更改为我尝试过的内容,但无法将我的活动更改为片段。有人可以告诉我该怎么做吗?在哪里编辑我是Android上的新手。请告诉我和在此先感谢 这是我的活动: 问题答案: 只要了解一些步骤,您就可以现在和将来轻松地将Activity转换为Fragment ..: 首先,不要扩展,只要扩展.. 例如: 然后覆盖.. 然后通过LayoutInflater扩展布局,并分配给进一步用于子视图