【问题标题】:How to add a dynamic button in an external java class?如何在外部 java 类中添加动态按钮?
【发布时间】:2019-03-25 00:48:15
【问题描述】:

我在另一个 java 类中创建 public void onCreate(Bundle SavedInstanceState) 时遇到问题。因此,我无法在 java 中创建动态按钮。我不知道该怎么做.. 这是我的java类

public class GamePanel extends SurfaceView implements SurfaceHolder.Callback
{
    public static final int WIDTH = 856;
    public static final int HEIGHT = 480;
    public static final int MOVESPEED = -5;
    private long smokeStartTime;
    private long missileStartTime;
    private MainThread thread;
    private Background bg;
    private Player player;
    private ArrayList<Smokepuff> smoke;
    private ArrayList<Missile> missiles;
    private ArrayList<TopBorder> topborder;
    private ArrayList<BotBorder> botborder;
    private Random rand = new Random();
    private int maxBorderHeight;
    private int minBorderHeight;
    private boolean topDown = true;
    private boolean botDown = true;
    private boolean newGameCreated;

    public void onCreate(Bundle SavedInstanceState) {
        super.onCreate(SavedInstanceState);
    }

这是我的主要 java,它有这个 java 类的 contentView..

public class Game extends Activity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //turn title off
        requestWindowFeature(Window.FEATURE_NO_TITLE);

        //set to full screen
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(new GamePanel(this));

    }

请帮我找到解决方案,并在 GamePanel java 类中创建一个动态按钮。

【问题讨论】:

    标签: java android android-studio button android-button


    【解决方案1】:
     //in your activity add this for button
        LinearLayout layout = (LinearLayout) findViewById(R.id.linear_layout_tags);
    
        //set the properties for button
        Button btnTag = new Button(this);
        btnTag.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        btnTag.setText("Button");
        btnTag.setId(some_random_id);
    
        //add button to the layout
        layout.addView(btnTag);
    

    【讨论】:

    • 它说无法解析符号(id)......此外 GamePanel.java 是一个外部类。它没有任何布局......大多数游戏都在此运行,因为主游戏。 java 通过 .....setContentView(new GamePanel(this)); 显示 GAmePanel.java;
    猜你喜欢
    • 1970-01-01
    • 2016-04-24
    • 2020-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多