setContentView(R.layout.voicerecord_img);
TextView l_tv = new TextView(this);
l_tv.setText("you can do it");
l_tv.setTextColor(Color.WHITE);
l_tv.setBackgroundColor(Color.BLUE);
TextView l_tv2 = new TextView(this);
l_tv2.setText("hello");
l_tv2.setTextColor(Color.WHITE);
l_tv2.setBackgroundColor(Color.YELLOW);
FrameLayout l_fr = new FrameLayout(this);
RelativeLayout.LayoutParams l_layoutParams = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
l_layoutParams.leftMargin = 500;
l_layoutParams.topMargin = 100;
l_fr.setLayoutParams(l_layoutParams);
l_fr.addView(l_tv);
l_fr.addView(l_tv2);
((RelativeLayout) findViewById(R.id.layout1)).addView(l_fr);
((RelativeLayout) findViewById(R.id.layout1)).removeView(l_tv2); (1)
In uppter code, do you think that l_tv2 was removed really?
( Keep an eye on (1) )
No.
TextView l_tv = new TextView(this);
l_tv.setText("you can do it");
l_tv.setTextColor(Color.WHITE);
l_tv.setBackgroundColor(Color.BLUE);
TextView l_tv2 = new TextView(this);
l_tv2.setText("hello");
l_tv2.setTextColor(Color.WHITE);
l_tv2.setBackgroundColor(Color.YELLOW);
FrameLayout l_fr = new FrameLayout(this);
RelativeLayout.LayoutParams l_layoutParams = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
l_layoutParams.leftMargin = 500;
l_layoutParams.topMargin = 100;
l_fr.setLayoutParams(l_layoutParams);
l_fr.addView(l_tv);
l_fr.addView(l_tv2);
l_fr.removeView(l_tv2); (2)
((RelativeLayout) findViewById(R.id.layout1)).addView(l_fr);
//((RelativeLayout) findViewById(R.id.layout1)).removeView(l_tv2);
How about this?
( Keep an eye on (2) )
Yes, l_tv2 was removed.
TextView l_tv = new TextView(this);
l_tv.setText("you can do it");
l_tv.setTextColor(Color.WHITE);
l_tv.setBackgroundColor(Color.BLUE);
TextView l_tv2 = new TextView(this);
l_tv2.setText("hello");
l_tv2.setTextColor(Color.WHITE);
l_tv2.setBackgroundColor(Color.YELLOW);
FrameLayout l_fr = new FrameLayout(this);
RelativeLayout.LayoutParams l_layoutParams = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
l_layoutParams.leftMargin = 500;
l_layoutParams.topMargin = 100;
l_fr.setLayoutParams(l_layoutParams);
l_fr.addView(l_tv);
l_fr.addView(l_tv2);
//l_fr.removeView(l_tv2);
((RelativeLayout) findViewById(R.id.layout1)).addView(l_fr);
((FrameLayout)(((RelativeLayout) findViewById(R.id.layout1)).getChildAt(0))).removeView(l_tv2); (3)
How about this?
( Keep an eye on (3) )
Yes, l_tv2 was removed.
In other words, removeView function removes only direct child object.
'Android' 카테고리의 다른 글
Fragment life cycle (0) | 2013.08.02 |
---|---|
The specified child already has a parent. You must call removeView() on the child's parent first. (0) | 2013.07.23 |
image resource size (0) | 2013.07.22 |
Making a transparent layout which is added to another layout (0) | 2013.07.08 |
RGB 컬러코드 int로 파싱하기 (0) | 2013.07.05 |