我试图创建简单的Recyclerview与视图绑定。
问题是我的回收器视图没有分隔线。似乎我所有的物品都是
排成一排。
以下是我的代码:
这里是activity_main。xml:
<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:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
>
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/tool"
android:background="@color/c4"
android:layout_width="0dp"
app:title="Kotlin-Recyclerview"
app:titleTextColor="@color/white"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="55dp"
android:padding="4dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tool" />
</androidx.constraintlayout.widget.ConstraintLayout>
这里是recyclerview_rows。xml:
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:textColor="@color/black"
android:text="Name"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.09"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.04000002" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
房车。Model.kt:
data class RV_Model(val name:String)
RV_Adapter.kt:
class RV_Adapter(private val mylist:List<RV_Model>) :RecyclerView.Adapter<RV_Adapter.MyViewholder>() {
lateinit var adapter_binding:RecyclerviewRowsBinding
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): MyViewholder {
adapter_binding = RecyclerviewRowsBinding.inflate(LayoutInflater.from(parent.context),parent,false);
return MyViewholder(adapter_binding)
}
override fun onBindViewHolder(holder: MyViewholder, position: Int) {
val current_item = mylist[position]
adapter_binding.text.text= current_item.name
}
class MyViewholder(val adapter_binding:RecyclerviewRowsBinding) :RecyclerView.ViewHolder(adapter_binding.root) {
}
override fun getItemCount(): Int {
return mylist.size
}
}
MainActivity.kt:
class MainActivity : AppCompatActivity() {
lateinit var binding:ActivityMainBinding
var mylist= ArrayList<RV_Model>()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
set_data()
binding.recyclerView.layoutManager= LinearLayoutManager(this)
binding.recyclerView.adapter=RV_Adapter(mylist)
binding.recyclerView.setHasFixedSize(true)
}
fun set_data() {
mylist.add(RV_Model("A"))
mylist.add(RV_Model("B"))
mylist.add(RV_Model("C"))
mylist.add(RV_Model("D"))
}
}
有什么问题?
[这里是图像:1
你好兄弟试试这个代码工作正常!
这里是recyclerview_rows。xml:
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="15dp"
android:layout_margin="10dp">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="10dp">
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Name"
android:textColor="@color/black"
android:textSize="30sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.09"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.04000002" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
有许多方法可以在项目之间创建分隔线。
在你的文本视图下面放一个视图:-
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="30sp"
android:textColor="@color/black"
android:text="Name"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.09"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.04000002" />
<View
android:layout_width="match_parent"
android:layout_height="@dimen/d1"
app:layout_constraintTop_toBottomOf="@id/text"
android:background="#000000"/>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.cardview.widget.CardView>
标准方式:
val mDividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(),
mLayoutManager.getOrientation());
recyclerView.addItemDecoration(mDividerItemDecoration);
有很多方法可以在列表中的项目之间创建分隔或放置的内容(例如,在项目布局的底部添加可视元素,或者在数据项之间添加可视项目),但最简单的方法是使用标准分隔线< code>ItemDecoration:
val divider = DividerItemDecoration(requireContext(), layoutManager.orientation)
recyclerView.addItemDecoration(divider)
默认情况下没有一个(正如您注意到的!
问题内容: 我想要一个JFrame,在左右两侧有一个边框,边框为黑色,宽度为withfOfJFrame / 10。 现在,我的尝试如下所示: 这会在左右两侧添加一个黑色边框,但是该边框具有固定的大小,并且在调整窗口大小时不会重新计算。大小甚至不是800(JFrame的开始宽度)的1/10。 我究竟做错了什么?还是有更好的方法来做到这一点? 问题答案: 您可以使用和适当的权重来获得所需的结果:
问题内容: 我正在从Bootstrap 2.3迁移到Bootstrap3,一切正常。但是,当我尝试添加一些图标时,图标字体无法正确显示。我尝试,仅正确显示了“.glyphicon-envelope”。其他显示如“ E001”等。 我该如何解决这个问题? 对于其他浏览器,字形显示正确,只有Firefox无法正确显示。 问题答案: 好的,以上问题未能解决我的问题。我的字体文件夹与Bootstrap c
问题内容: 我是Android的新秀,因此决定将Cloud Firestore用作我的数据库,并使用它来填充MainActivity中的列表。我以为用于Firestore会超级简单,但我不知道为什么RecyclerView中什么也没有。作为参考,这是Firebase UI页面 ,这是我基于我的应用程序创建的示例代码。我想要做的就是填充用户已保存在数据库中的“课程”列表(Course.java如下所
当我按下后退按钮时,这个ShoppingActivity会被破坏,当我再次访问该activity时,我发现我的回收器视图项目被替换了两次。我该如何解决这个问题? ShoppingActivity.java这里编写的所有代码和volley类也在这里调用,当我按下后退键并再次访问该活动时,我发现我的回收器视图项被替换了 @override protected void onCreate(Bundle
我的插入方法解释:我分配了尾巴的“下一个变量”来保存旧节点的地址。我分配了尾部,并将新节点插入列表。 我试着从尾部开始显示列表,然后遍历列表,直到列表到达头部。 问题:但是输入显示C,这不是我想要的。显示方法应显示C、B、A。 我甚至在纸上调试我的代码。我不知道为什么显示器没有检索链接列表中链接的节点的最后地址。它仅检索列表中的最后一个节点,并仅显示列表中的最后一个节点。
问题内容: 在两台计算机的HTML文件中显示数据库的结果时出现问题。 因此,在一台计算机上它显示的名称是这样的: 数据库的排序规则为,表的排序规则为。 在另一台计算机上,它显示如下(我希望这样): 名称在标签中列出。两种浏览器的语言是英语,并且Html文件在两种环境下都相同,所以我认为这与php.ini文件的字符集或编码有关 我曾尝试更改中的值,但没有任何变化,我在任何地方都找不到答案。 唯一的区