2016-11-27 7 views
-3

私はプログレスバーがどのように動作するのか把握しようとしていますので、プログレスバーの進行状況を変更するプラスとマイナスのボタンがあるシンプルなアプリケーションを作ったのです。 Androidスタジオでエラーは発生しませんが、携帯電話で起動するとクラッシュする(名誉5X)携帯電話で起動したときにアプリがクラッシュする原因を教えてください。

package net.gamepickle.rcap_new; 
import android.os.Handler; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

import android.widget.ProgressBar; 

public class MainActivity extends AppCompatActivity { 

int progressStatus = 50; 
ProgressBar progressBar = (ProgressBar) findViewById(R.id.happiness_progress); 


@Override 
public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 



} 

public void run(){ 
    Button plus = (Button) findViewById(R.id.happiness_plus); 
    Button minus = (Button) findViewById(R.id.happiness_minus); 







    plus.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      if(progressStatus!=100){ 
       progressStatus += 1; 
       progressBar.setProgress(progressStatus); 
      } 
     } 
    }); 

    minus.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      if(progressStatus!=0){ 
       progressStatus -= 1; 
       progressBar.setProgress(progressStatus); 
      } 
     } 
    }); 
    } 
} 
+0

logcatとは何ですか? – QBrute

答えて

0

スタックトレースを追加してください。

あなたがクラスレベルで

ProgressBar progressBar = (ProgressBar)findViewById(R.id.happiness_progress); 

を呼び出しているようです。 分割する必要があります。 宣言:ProgressBar progressBar; とonCreate関数の場合:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.activity_main); 
    progressBar = (ProgressBar) findViewById(R.id.happiness_progress); 
    } 
関連する問題