不配置layout这些xml文件。 完全用java代码写出上面的布局, 有人能写出来吗?

解决方案 »

  1.   

    顶部的高是40, 底部下是40,中间是自动适应屏幕。 最好是用RelativeLayout的方式,用代码创建。
      

  2.   

    你在挑战我们的智商吗?想让我们帮你写就说下嘛
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
           // setContentView(R.layout.activity_sec);
           RelativeLayout rl = new RelativeLayout(this);
           RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           setContentView(rl,lp);
          
           
           //top view
           RelativeLayout topLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams topLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           topLayout.setBackgroundColor(Color.BLUE);
           topLayout.setId(TOP_ID);
           
           rl.addView(topLayout,topLParams);
           
           //center view
           RelativeLayout centerLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams centerLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           
           centerLayout.setBackgroundColor(Color.RED);
           centerLParams.addRule(RelativeLayout.BELOW, TOP_ID);
           
           rl.addView(centerLayout,centerLParams);
           
           //bottom view
           RelativeLayout botLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams botLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           botLayout.setBackgroundColor(Color.YELLOW);
           botLParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
           
           rl.addView(botLayout,botLParams);
           
           
          
                }
      

  3.   

    你在挑战我们的智商吗?想让我们帮你写就说下嘛
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
           // setContentView(R.layout.activity_sec);
           RelativeLayout rl = new RelativeLayout(this);
           RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           setContentView(rl,lp);
          
           
           //top view
           RelativeLayout topLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams topLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           topLayout.setBackgroundColor(Color.BLUE);
           topLayout.setId(TOP_ID);
           
           rl.addView(topLayout,topLParams);
           
           //center view
           RelativeLayout centerLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams centerLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           
           centerLayout.setBackgroundColor(Color.RED);
           centerLParams.addRule(RelativeLayout.BELOW, TOP_ID);
           
           rl.addView(centerLayout,centerLParams);
           
           //bottom view
           RelativeLayout botLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams botLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           botLayout.setBackgroundColor(Color.YELLOW);
           botLParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
           
           rl.addView(botLayout,botLParams);
           
           
          
                }嘿嘿哈哈呵呵,真是好人啊。
      

  4.   

    一个LinearLayout同样可以,更加简单
      

  5.   

    多谢, 对android这些布局,代码写理解不好, 
      

  6.   

    你在挑战我们的智商吗?想让我们帮你写就说下嘛
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
           // setContentView(R.layout.activity_sec);
           RelativeLayout rl = new RelativeLayout(this);
           RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           setContentView(rl,lp);
          
           
           //top view
           RelativeLayout topLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams topLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           topLayout.setBackgroundColor(Color.BLUE);
           topLayout.setId(TOP_ID);
           
           rl.addView(topLayout,topLParams);
           
           //center view
           RelativeLayout centerLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams centerLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           
           centerLayout.setBackgroundColor(Color.RED);
           centerLParams.addRule(RelativeLayout.BELOW, TOP_ID);
           
           rl.addView(centerLayout,centerLParams);
           
           //bottom view
           RelativeLayout botLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams botLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           botLayout.setBackgroundColor(Color.YELLOW);
           botLParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
           
           rl.addView(botLayout,botLParams);
           
           
          
                }
    我试了,中间绘错了,你确认这个OK?
      

  7.   

    你在挑战我们的智商吗?想让我们帮你写就说下嘛
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
           // setContentView(R.layout.activity_sec);
           RelativeLayout rl = new RelativeLayout(this);
           RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           setContentView(rl,lp);
          
           
           //top view
           RelativeLayout topLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams topLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           topLayout.setBackgroundColor(Color.BLUE);
           topLayout.setId(TOP_ID);
           
           rl.addView(topLayout,topLParams);
           
           //center view
           RelativeLayout centerLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams centerLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           
           centerLayout.setBackgroundColor(Color.RED);
           centerLParams.addRule(RelativeLayout.BELOW, TOP_ID);
           
           rl.addView(centerLayout,centerLParams);
           
           //bottom view
           RelativeLayout botLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams botLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           botLayout.setBackgroundColor(Color.YELLOW);
           botLParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
           
           rl.addView(botLayout,botLParams);
           
           
          
                }
    我试了,中间绘错了,你确认这个OK?
    公司试的ok啊
      

  8.   

    你在挑战我们的智商吗?想让我们帮你写就说下嘛
    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
           // setContentView(R.layout.activity_sec);
           RelativeLayout rl = new RelativeLayout(this);
           RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           setContentView(rl,lp);
          
           
           //top view
           RelativeLayout topLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams topLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           topLayout.setBackgroundColor(Color.BLUE);
           topLayout.setId(TOP_ID);
           
           rl.addView(topLayout,topLParams);
           
           //center view
           RelativeLayout centerLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams centerLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.MATCH_PARENT);
           
           centerLayout.setBackgroundColor(Color.RED);
           centerLParams.addRule(RelativeLayout.BELOW, TOP_ID);
           
           rl.addView(centerLayout,centerLParams);
           
           //bottom view
           RelativeLayout botLayout =new RelativeLayout(this);
           RelativeLayout.LayoutParams botLParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,40);
           botLayout.setBackgroundColor(Color.YELLOW);
           botLParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM,RelativeLayout.TRUE);
           
           rl.addView(botLayout,botLParams);
           
           
          
                }
    我试了,中间绘错了,你确认这个OK?
    公司试的ok啊
    我这里显示的是中间部分是到底了, 只是botLayout正好是覆盖在centerLayout上面。
    也就是说centerLayout的bottom和botLayout的bottom是一样的,
      

  9.   

    明明可以用XML解决的问题,非要用代码解决,不是自虐吗?
    以前用代码写过拍照用的界面,不是一般的麻烦!2楼的真有耐心啊!
      

  10.   

    感谢2楼,好了, 有一个属性配错了, 
    刚接触android不久,通过这个学到不少布局的使用。