我有一个像Instagram UI一样的Recyclerview。我想为图像下方的文本设置一个onclick监听器,以便在单击时展开,再次单击时折叠,就像Instagram应用程序一样。下面是它的样子。
所以当" lorem ipsum"单击文本,它应该展开并显示文本的其余部分。当再次点击时,它应该崩溃。
这就是我在CardView.xml中编写TextView的方法
<TextView
android:id="@+id/mCardDescription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_marginRight="10dp"
android:layout_marginStart="4dp"
android:maxLines="2"
android:text="Lorem ipsum dolor sit amet, consectetur adipiscing
elit, sed do eiusmod tempor incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis nostrud exercitation"
/>
真的需要帮助。谢谢。
答案 0 :(得分:1)
在onBindViewHolder中,您可以为要展开或折叠的特定文本视图设置单击侦听器。在下面的代码中,rh是你的行持有者对象,expandable是你的布尔值,用于检查当前文本是否被扩展。如果您有任何问题,请告诉我。
onBindViewHolde(....){
rh.readMoreTxt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (!rh.expandable) {
rh.expandable = true;
rh.readMoreTxt.setText("Show less");
} else {
rh.expandable = false;
rh.readMoreTxt.setText("Show more");
}
}
});
}
答案 1 :(得分:0)
此代码将解决您的问题。
private boolean isVisible;
textView.setOnClickListener(new View.OnClickListener() {
isVisible = !isVisible;
@Override
public void onClick(View v) {
if(isVisible) {
//Make VISIBLE visibility of your view
} else {
//Make GONE visibility of your view
}
});