رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
عدم نمایش Switch در ViewGroup (حل شد)
#1
سلام دوستان گرامی
کدی نوشتم تقریبا بدین صورت :

public class TestView extends ViewGroup {

    private ImageView imageView;
    private Switch aSwitch;

    

    public TestView(Context context) {
        super(context);
        init();
    }

    public TestView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();
    }

    public TestView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        init();
    }

    private void init() {


        imageView = new ImageView(getContext());
        imageView.setImageResource(R.drawable.clock_icon);
        imageView.setAlpha(.5f);


        aSwitch = new Switch(getContext());
        aSwitch.setText("hello");
        aSwitch.setChecked(true);


        addView(imageView);
        addView(aSwitch);



    }

    @Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
        imageView.layout(50, 50,100, 70);
        aSwitch.layout(50,50,100,70);


    }

    

    @Override
    protected void onLayout(boolean b, int i, int i1, int i2, int i3) {

    }
}

متن hello نشان داده میشه،  اما دکمه سوئیچ نمایش داده نمیشه. آیا می دونید مشکل از چیه ؟
پاسخ
تشکر شده توسط:
#2
مشکل تقریبا بدین شکل حل شد:

   @Override
    protected void onSizeChanged(int w, int h, int oldw, int oldh) {
        super.onSizeChanged(w, h, oldw, oldh);
        aSwitch.measure(w, h);
        aSwitch.layout(0, 0, aSwitch.getMeasuredWidth(), aSwitch.getMeasuredHeight());
        
    }
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 2 مهمان