【发布时间】:2020-04-21 05:33:44
【问题描述】:
完成所有这些后,我对类进行了所有必要的更改以显示所有项目,但现在显示所有项目 -1
这是一个列表视图的自定义适配器,问题是显示所有项目 -1 而不是所有项目,在添加 1 显示所有项目后,添加另一个显示全部加上前面添加的项目
列表视图适配器
import android.app.Activity;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.Spinner;
import android.widget.TextView;
import java.util.ArrayList;
// aquest custom adapter es pel list_view no pel spinner
// aqui pots interectuar amb spinner usant al funcio del getview
public class Custom_listview_adapter extends ArrayAdapter {
Context context;
private String [] spinner_array = new String [] {"ha vingut","Ha faltat"};
private String [] notas_array = new String [] {"0","1","2","3","4","5","6","7","8","9","10"};
private int textResourceId;
private int resource;
private ArrayList<String> data;
public Custom_listview_adapter(Context context, int resource, int textViewResourceId, ArrayList data){
super(context,resource,textViewResourceId,data);
this.context = context;
this.textResourceId = textViewResourceId;
this.resource = resource;
this.data = data;
}
@Override
public int getCount(){
return this.data.size();
}
@Override
public Object getItem(int position){
return this.data.get(position);
}
@Override
public long getItemId( int position){
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent){
View view = convertView;
if (view == null){
view = ((Activity) context).getLayoutInflater().inflate( R.layout.adapter_list_view, null);
}
TextView textView = (TextView) view.findViewById(R.id.name);
Spinner spinner = (Spinner) view.findViewById(R.id.spinner);
Spinner notas = (Spinner) view.findViewById(R.id.notas);
textView.setText(data.get(position));
Custom_spinner_adapter adapter_notas = new Custom_spinner_adapter(context, R.layout.adapter_spinner,R.id.notas, this.notas_array);
notas.setAdapter(adapter_notas);
Custom_spinner_adapter adapter = new Custom_spinner_adapter(context, R.layout.adapter_spinner,R.id.spinner, this.spinner_array);
spinner.setAdapter(adapter);
return view;
}
}
<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:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="vertical"
android:padding="20dp">
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
tools:layout_editor_absoluteX="20dp" />
<Spinner
android:id="@+id/spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="2dp"
app:layout_constraintTop_toBottomOf="@+id/name"
tools:layout_editor_absoluteX="20dp" />
<Spinner
android:id="@+id/notas"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="2dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/spinner" />
</androidx.constraintlayout.widget.ConstraintLayout>
<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:id="@+id/constraint"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/lv1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv1"
/>
<TextView
android:id="@+id/tv1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="@string/llista_alumnes"
android:textSize="24sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/toolbar" />
<include
android:id="@+id/toolbar"
layout="@layout/toolbar"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>```
【问题讨论】:
-
也许你没有在底部正是你的工具栏所采用的大小。在 Viewpager 或 RecyclerView 中添加 android:layout_marginBottom="?attr/actionBarSize"。看看你的 xml。
-
我正在使用的是一个列表视图,我放了一个没有什么不同的地方
-
粘贴您的adapter_list_view.xml
-
请粘贴您的 xml 文件
-
现在完成了,谢谢您的建议
标签: java android android-listview custom-adapter