Я пытаюсь добавить View в ViewGroup на ViewGroup onTouchEvent, следующий код:
ViewGroup mDrawingCanvas = new ViewGroup(mContext)
{
@Override
public boolean isFocused() {
// TODO Auto-generated method stub
Log.d(TAG, "View's On focused is called !");
return super.isFocused();
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
View vv = new View(mContext);
vv.setBackgroundColor(Color.GREEN);
vv.setLayoutParams(new LayoutParams(200, 200));
this.addView(vv);
Toast.makeText(mContext, "Views child count = "+this.getChildCount(), Toast.LENGTH_SHORT).show();;
break;
return true;
}
@Override
protected void onLayout(boolean changed, int l, int t, int r,
int b) {
// TODO Auto-generated method stub
}
};
Представление добавляется в группу просмотра, Toast отображает большее количество просмотров при каждом событии Touch Down, но представление не отображается на экране в группе просмотра.
Я видел связанный вопрос в StackOverflow, но мой вопрос уникален. и разные.
Пожалуйста, подскажите, как решить эту проблему, любая помощь очень ценится.
P.S. Я также пытался установить параметры макета представления, прежде чем добавлять его в группу просмотра, но получаю те же результаты. Я также напечатал ширину и высоту представления в LogCat после добавления его в ViewGroup, и он всегда отображает 0. Я думаю, что проблема где-то с настройками ширины и высоты представления.
onLayout(...)
? - person Salman Khakwani   schedule 14.10.2013