android - 如何在android的viewpager2中删除一个对象?
问题描述
我正在做一个viewpage2视图,代码运行后显示对象如图所示,如何删除红色圈出的对象,幻灯片/页面用完时出现
这是 Mainactivity 类代码
public class MainActivity extends AppCompatActivity {
ViewPager2 viewPager2;
List<user> userList;
userAdaptor userAdaptor;
DatabaseReference mydb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager2 = findViewById(R.id.view2);
userList = new ArrayList<>();
userList.add(new user(R.drawable.ic_launcher_background, "tf","C"));
userList.add(new user(R.drawable.ic_launcher_foreground,"wuiad","%"));
userAdaptor = new userAdaptor(this, userList);
viewPager2.setAdapter(userAdaptor);
}
}
这是用户类代码
public class user {
private int item;
private String name;
private String ind;
public user(){
}
public user(int item,String name, String ind){
this.item =item;
this.name = name;
this.ind = ind;
}
public int getItem(){
return item;
}
public void setItem(int item){
this.item = item;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public String getInd(){
return ind;
}
public void setInd(String ind){
this.ind = ind;
}
}
这是用户适配器类代码
public class userAdaptor extends
RecyclerView.Adapter<userAdaptor.UserViewHolder> {
Context mcontext;
List<user> userList;
public userAdaptor(Context mcontext, List<user>userList){
this.mcontext = mcontext;
this.userList = userList;
}
@NonNull
@Override
public UserViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int
viewType) {
View view = LayoutInflater.from(mcontext).inflate(R.layout.item,
parent, false);
return new UserViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull UserViewHolder holder, int position)
{
user user = userList.get(position);
holder.tv_name.setText(user.getName());
holder.tv_ind.setText(user.getInd());
holder.item.setImageResource(user.getItem());
}
@Override
public int getItemCount() {
return userList.size();
}
public class UserViewHolder extends RecyclerView.ViewHolder {
ImageView item;
TextView tv_name, tv_ind;
public UserViewHolder(@NonNull View itemView) {
super(itemView);
item = itemView.findViewById(R.id.gambar);
tv_name = itemView.findViewById(R.id.textValue);
tv_ind =itemView.findViewById(R.id.indikator);
}
}
}
这是activity_main.xml 代码
<?xml version="1.0" encoding="utf-8"?>
<ScrollView 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">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="10dp">
<LinearLayout
android:layout_width="260dp"
android:layout_height="260dp"
android:layout_marginTop="70dp"
android:layout_gravity="center"
>
<androidx.viewpager2.widget.ViewPager2
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/view2"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
</LinearLayout>
这是 item.xml 代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<ImageView
android:id="@+id/gambar"
android:layout_width="100dp"
android:layout_height="100dp"
android:src="@drawable/ic_launcher_background"/>
<TextView
android:id="@+id/textValue"
android:layout_marginTop="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Value"
android:textStyle="bold"
android:textSize="25dp"/>
<TextView
android:id="@+id/indikator"
android:layout_marginTop="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
android:text="C"
android:textSize="20dp"/>
解决方案
我很有趣你在谈论以下场景
当没有要滚动的页面时,您会在图像中圈出视图。如果是这样,那么以下更改将处理它,
<androidx.viewpager2.widget.ViewPager2
.............
android:overScrollMode="never"/>
作为viewPager2
一种RecycleView
,它具有 的性质RecycleView
。你得到的是一个 overScroll 属性,RecycleView
它表明没有更多的项目。单击此处了解有关overScrollMode的更多信息。
推荐阅读
- java - 如何理解 tsp 问题中的这两个软约束?
- python - 我如何知道 linebot URITemplateAction 中选择了哪个选项?
- arrays - Kotlin:十位数
- python - Dockerfile:pip install 失败并显示 requirements.txt(但成功使用单个包)
- python-3.x - 如何在条件位于列表中的情况下使用 np
- flutter - 颤振相机包显示时间码
- javascript - 解构 props 和 state 导致 ESlint 中的未使用状态错误
- mysql-workbench - 如何从工作台中删除例程组错误?
- c# - 发送可分辨 CA 列表作为 TLS 握手服务器 Hello 的一部分
- vpn - shadowsocks 或 l2tp 更快更稳定