簡體   English   中英

Android,在彈出窗口中的 TextView 中設置文本

[英]Android, setText in TextView in popup window

我見過與此類似的問題,並嘗試過它們是解決方案,但由於某種原因,我無法使其正常工作。 每次我嘗試設置文本時都會導致錯誤。

    LayoutInflater inflater = (LayoutInflater)Levels1_20.this.getSystemService(Context
            .LAYOUT_INFLATER_SERVICE);
    View layout = inflater.inflate(R.layout.start_level_popup, null);

    Display display = getWindowManager().getDefaultDisplay();
    DisplayMetrics displayMetrics = new DisplayMetrics();
    display.getMetrics(displayMetrics);
    int screenHeight = displayMetrics.heightPixels;
    int screenWidth = displayMetrics.widthPixels;


    final PopupWindow pw = new PopupWindow(layout, screenWidth, screenHeight, true);

    TextView bestScoreTextView = (TextView)layout.findViewById(R.id.bestScoreTextView);
    //Causes error
    bestScoreTextView.setText(userScore);
/*
    TextView bronzeRequiredTextView = (TextView)layout.findViewById(R.id.bronzeRequiredTextView);
    bronzeRequiredTextView.setText(bronzeRequired);
    TextView silverRequiredTextView = (TextView)layout.findViewById(R.id.silverRequiredTextView);
    silverRequiredTextView.setText(silverRequired);
    TextView goldRequiredTextView = (TextView)layout.findViewById(R.id.goldRequiredTextView);
    goldRequiredTextView.setText(goldRequired);
*/
    ((Button)layout.findViewById(R.id.backButton)).setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
            pw.dismiss();
        }
    });

    ((Button)layout.findViewById(R.id.startButton)).setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
            Intent gameActivityIntent = new Intent(Levels1_20.this, GameActivity.class);
            startActivity(gameActivityIntent);
        }
    });
    pw.showAtLocation(layout, Gravity.CENTER, 0, 0);

如果您的userScore來自 int 類型,您應該更改此行:

bestScoreTextView.setText(userScore);

到:

bestScoreTextView.setText(Integer.toString(userScore));

您無法將不同於String內容設置為TextView文本

嘗試在setText()方法中使用字符串。

bestScoreTextView.setText(userScore+"");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM