Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
按钮的setvisibility在android中不起作用_Android_Kotlin_Android Recyclerview_Empty List - Fatal编程技术网

按钮的setvisibility在android中不起作用

按钮的setvisibility在android中不起作用,android,kotlin,android-recyclerview,empty-list,Android,Kotlin,Android Recyclerview,Empty List,基本上,这个想法是在点击时在activity address中添加地址,并且它将重定向到下一页,用户在Submit上获取地址表单,它将获取地址并添加到以前的activity recycleview 场景:-- 1-->当recycleview在地址活动中为空时,它会显示空文本,并且按钮不可见==>此处没有问题 2-->当recycleview在地址中不为空时,活动空文本消失,但按钮不可见==>我无法看到按钮的可见性==>问题就在这里 这是我的代码--> class AddressActivity

基本上,这个想法是在点击时在activity address中添加地址,并且它将重定向到下一页,用户在Submit上获取地址表单,它将获取地址并添加到以前的activity recycleview

场景:--

1-->当recycleview在地址活动中为空时,它会显示空文本,并且按钮不可见==>此处没有问题

2-->当recycleview在地址中不为空时,活动空文本消失,但按钮不可见==>我无法看到按钮的可见性==>问题就在这里

这是我的代码-->

class AddressActivity:AppCompatActivity(){
私有lateinit变量数据:LiveData
私有变量数据1:Int=0
变量适配器:AddressAdapter?=null
重写创建时的乐趣(savedInstanceState:Bundle?){
super.onCreate(savedInstanceState)
setContentView(R.layout.address)
var mActionBarToolbar=findviewbyd(R.id.toolbatable);
设置支持操作栏(mActionBarToolbar);
//将返回箭头添加到工具栏
如果(getSupportActionBar()!=null){
getSupportActionBar()?.setDisplayHomeAsUpEnabled(true);
getSupportActionBar()?.setDisplayShowHomeEnabled(true);
getSupportActionBar()?.setHomeAsUpIndicator(R.drawable.ic键盘箭头左箭头黑色24dp);
//supportActionBar?.setTitle(“表格”)
getSupportActionBar()?.setTitle((Html.fromHtml(““+getString(
R.string.address)+“”);
}
addbutton.findViewById(R.id.addbutton).setOnClickListener{
val intent=intent(这是AddAddressActivity::class.java)
星触觉(意图)
}
LocalBroadcastManager.getInstance(this).registerReceiver(mMessageReceiver,
IntentFilter(“自定义消息1”)
)
val recyclerView=findviewbyd(R.id.recyclerView)
recyclerView.setHasFixedSize(真)
recyclerView.layoutManager=LinearLayoutManager(此,LinearLayoutManager.VERTICAL,false)
val适配器=地址适配器(applicationContext)
recyclerView.adapter=适配器
回收视图。附加装饰(
分割(
recyclerView.context,
DividerItemDecoration.VERTICAL
)
)
recyclerView.addOnScrollListener(对象:
RecyclerView.OnScrollListener(){
覆盖CrollStateChanged(recyclerView:recyclerView,newState:Int){
super.onScrollStateChanged(recyclerView、newState)
Log.e(“RecyclerView”、“onScrollStateChanged”)
}
覆盖已克隆的乐趣(recyclerView:recyclerView,dx:Int,dy:Int){
super.onScrolled(回收视图、dx、dy)
}
})
val应用程序=作为自定义应用程序的应用程序
data=application.database.AddressDao().getAddressesWithChanges()
观察(这个,观察者{words1->
//更新适配器中单词的缓存副本。
words1?.let{adapter.updateData(it)}
})
如果(!data.hasActiveObservers()){
ordernow.setVisibility(View.GONE)
emptytext.setVisibility(View.VISIBLE)
}否则{
ordernow.setVisibility(View.VISIBLE)
emptytext.setVisibility(View.GONE)
}
}
需要帮助谢谢

更换此

data.observe(this, Observer { words1 ->
    // Update the cached copy of the words in the adapter.
    words1?.let { adapter.updateData(it) }
})
if (!data.hasActiveObservers()) {
    ordernow.setVisibility(View.GONE)

    emptytext.setVisibility(View.VISIBLE)

} else {
    ordernow.setVisibility(View.VISIBLE)

    emptytext.setVisibility(View.GONE)

}


您已接近答案…将您的答案更改为-->如果(words1.size>0){ordernow.setVisibility(View.VISIBLE)emptytext.setVisibility(View.GONE)}或者{ordernow.setVisibility(View.GONE)emptytext.setVisibility(View.VISIBLE)}我将接受它
data.observe(this, Observer { words1 ->
    // Update the cached copy of the words in the adapter.
    words1?.let { adapter.updateData(it) }
})
if (!data.hasActiveObservers()) {
    ordernow.setVisibility(View.GONE)

    emptytext.setVisibility(View.VISIBLE)

} else {
    ordernow.setVisibility(View.VISIBLE)

    emptytext.setVisibility(View.GONE)

}
 data.observe(this, Observer { words1 ->
            
            if (words1.size > 0) {
            ordernow.setVisibility(View.VISIBLE) emptytext . setVisibility (View.GONE)
        } else {
            ordernow.setVisibility(View.GONE) emptytext . setVisibility (View.VISIBLE)
        }
            
            words1?.let { adapter.updateData(it) }
        })