dynamic buttons Android Layout

落花浮王杯 提交于 2019-12-11 08:20:06

问题


I want to create a layout in Android in a java class. I need that the user introduce a number between 1 to 20 and this create the number of butttons that the user has chosen.I want to create dynamic buttons and I have this code:

package com.example.nuevo;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.LinearLayout;

public class ControladorResuelto extends Activity {


protected Controlador controlador;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
     requestWindowFeature(Window.FEATURE_NO_TITLE);
      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                         WindowManager.LayoutParams.FLAG_FULLSCREEN);


        LinearLayout buttonsLayout =  (LinearLayout)findViewById(R.id.linearlayoutUp); 

    int nMallas = controlador.getnMallas();

    LinearLayout.LayoutParams layoutParams = new     LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
    for(int i=0;i<nMallas;i++){
        Button button = new Button(this);
        button.setText("Buttin "+(i+1));
        buttonsLayout.addView(button, layoutParams);******
    }

    setContentView(R.layout.panel_resuelto);
}

I have an error at the line with asterisks


回答1:


I'm pretty sure it's because you have setContentView(R.layout.panel_resuelto); at the end of your onCreate. Put it at the beginning, else findViewById won't work. I'm guessing you're getting a null pointer exception because the LinearLayout couldn't successfully be created since the content view wasn't set yet.



来源:https://stackoverflow.com/questions/21994278/dynamic-buttons-android-layout

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!