보기에서 확장 된 사용자 지정보기 클래스가 있고이를 활동에 사용하고 싶지만 아무 것도 표시하지 않습니다. 실행되는 오류는 없지만 검정색 화면에는 출력이 없습니다. 내 코드는 다음과 같다 :사용자 지정보기가 나타나지 않습니다.
public class MoveableMenuLayout extends View {
public MoveableMenuLayout(Context context, AttributeSet attrs) {
super(context, attrs);
LinearLayout ll = new LinearLayout(context);
ll.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
TextView tv = new TextView(context);
tv.setText("TES_______________");
ll.addView(tv);
this.invalidate();
this.requestLayout();
}
public MoveableMenuLayout(Context context) {
super(context);
LinearLayout ll = new LinearLayout(context);
ll.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
TextView tv = new TextView(context);
tv.setText("TES_______________");
ll.addView(tv);
this.invalidate();
this.requestLayout();
}
}
호출 활동
public class TestActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MoveableMenuLayout layout = new MoveableMenuLayout(this);
setContentView(layout);
}
}
내가 XML 레이아웃하지만 여전히 출력에 추가하여 시도했다. 내가 뭘 잘못하고 있는지 모르겠다. 나는 그것을 별도의 클래스가되기를 원하는 스타일을 변경하고 싶지 않다. xml 레이아웃을 사용할 수 있고 setcontentview를 사용하여 Activity에서 직접 설정할 수 있지만 그렇게하고 싶지는 않다. 감사합니다.
먼저 생성 된 선형 레이아웃이 뷰에 추가되지 않습니다. 또한 컨테이너가 아니기 때문에 다른보기를 간단한보기에 추가 할 수 없습니다. MoveableMenuLayout을 확장하는 ViewGroup 중 하나를 시도해 볼 수 있습니다. – Triode