#android
#Android
Вопрос:
Первая позиция или кнопка плохо задают ее как без полей, а следующая позиция имеет отрицательный запас, чтобы перекрывать первую позицию.
Первая позиция была в порядке, но другая позиция, которую я установил с отрицательным запасом, выглядит так.
Я хочу сделать это так.
public class ProductLineAdapter extends BaseAdapter{
private List<ProductLineInfo> productLineInfos;
private Context context;
private int prodCount;
public ProductLineAdapter(Context context,
List<ProductLineInfo> productLineInfos) {
this.context = context;
this.productLineInfos = productLineInfos;
prodCount = productLineInfos.size();
Log.d("Tabs", "List Name 1" prodCount);
}
@Override
public int getCount() {
return productLineInfos.size();
}
@Override
public ProductLineInfo getItem(int position) {
return productLineInfos.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
String name = getItem(position).getName();
int status = productLineInfos.size();
if (convertView == null) {
holder = new ViewHolder();
convertView = LayoutInflater.from(context).inflate(
R.layout.productline_name, parent, false);
if (position == 0) {
Button btn = new Button(context);
btn.setText("sample");
btn.setBackgroundDrawable(context.getResources().getDrawable(
R.drawable.tabs_pressed_state));
((ViewGroup) convertView).addView(btn);
convertView.setTag(holder);
} else if (position > 0) {
LinearLayout.LayoutParams layoutParams = new
LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT);
Button btn1 = new Button(context);
btn1.setText("sample2");
btn1.setBackgroundDrawable(context.getResources().getDrawable(
R.drawable.tabs_pressed_state));
layoutParams.setMargins(-100, 0, 0, 0);
btn1.setLayoutParams(layoutParams);
((ViewGroup) convertView).addView(btn1);
convertView.setTag(holder);
}
} else {
holder = (ViewHolder) convertView.getTag();
}
return convertView;
}
static class ViewHolder {
Button btn;
Button btn1;
}}
Ответ №1:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@ id/linearlayout1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageView
android:id="@ id/a"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/blanktab_normal" />
<ImageView
android:id="@ id/b"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="-60dp"
android:src="@drawable/blanktab_normal" />
<ImageView
android:id="@ id/c"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="-60dp"
android:src="@drawable/blanktab_normal" />
</LinearLayout>
<ListView
android:layout_below="@id/linearlayout1"
android:layout_height="match_parent"
android:layout_width="match_parent">
</ListView>
</RelativeLayout>
- Я просто использовал отрицательный запас, как показано выше
- Манипулировать onClick вкладок (используйте bringtofront)
- при нажатии на вкладку убедитесь, что вы заполнили элементы в своем списке.
- Вы можете найти способ динамического добавления представлений для ваших вкладок.