2014-02-01 3 views
-1

Я хочу создать прокручиваемую карту без каких-либо библиотек.Android - создать LinearLayout программно и инициализировать id из xml LinearLayout

Каждый LinearLayout должен быть карточкой. Могу ли я программно создать LinearLayout и инициализировать его идентификатором из xml LinearLayout?

Как это здесь (но это не работает):

public class LinearLayoutAdapter extends BaseAdapter { 

private List<ImageContent> images; 

private Context context; 

private Activity activity; 

private int width, height; 

public LinearLayoutAdapter(Activity activity, Context context, List<ImageContent> img, 

int width, int height) { 

this.context = context; 

this.activity=activity; 

this.images = img; 

this.width = width; 

this.height = height; 

} 

@Override 

public int getCount() { 

// TODO Auto-generated method stub 

return images.size(); 

} 

@Override 

public Object getItem(int position) { 

// TODO Auto-generated method stub 

return images.get(position); 

} 

@Override 

public long getItemId(int position) { 

// TODO Auto-generated method stub 

return 0; 

} 

@Override 

public View getView(int position, View convertView, ViewGroup parent) { 

LinearLayout lLayout; 


if (convertView != null) { 

lLayout = (LinearLayout) convertView; 

//lLayout = (LinearLayout) convertView.findViewById(R.id.imageLinearLayout); // this does not work 

} else { 

lLayout = new LinearLayout(context); 


} 

return lLayout; 

} 

} 
+0

объясните, что не работает. что он делает? – jeremyjjbrown

ответ

1

Если вы хотите получить LinearLayout от XML, вам нужно раздуть макет.

if (convertView == null) { 
    convertView = LayoutInflater.from(context).inflate(
         R.layout.your_layout, parent, false); 
} 

lLayout = (LinearLayout) convertView.findViewById(R.id.imageLinearLayout);  

Проверьте этот сайт для лучшего повторного использования макета с помощью ViewHolder. http://www.piwai.info/android-adapter-good-practices/

Смежные вопросы