2012-12-20 4 views
0

기본적으로 버튼 기능이있는 작은 '클릭 카운터'앱을 만들고 있는데,이 버튼을 누르면 텍스트 뷰 필드에 클릭 수가 표시됩니다.'클릭 카운터'Android 앱 재설정 버튼

wreset = (Button)findViewById(R.id.wreset);  
wreset.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View arg0) { 
     // TODO Auto-generated method stub 
     txtCount.setText(String.valueOf(0)); 
    } 

이 0에 텍스트 뷰 값을 변경, 그러나 때 : 내가 설정을 시도하고 다시 0이에 텍스트 뷰의 값을 변경하는 '리셋'버튼은 내가 지금까지 가지고있는 코드입니다 버튼을 다시 클릭하면 재설정 버튼을 클릭했을 때의 카운트에서 다시 시작됩니다.
예 :
a. 현재 카운트 = 10
b. 재설정 버튼이 선택됨
c. 현재 카운트 = 0
d. clicker 버튼을 누름
e. 현재 카운트 = 11

잘못된 진술이나 의도를 사용하고 있습니까?

+1

소리가 난다. 그것은 당신이 제로 (그리고 귀하의 구현에 따라 귀하의 디스플레이)해야합니다. – MrLore

답변

5

귀하의하지 당신이 사용하는 어떤 카운터 리셋 :

@Override 
public void onClick(View arg0) { 
    yourCounter = 0; 
    txtCount.setText("0"); 

} 
+1

헤이, 당신은 나를 때렸다. :-) – ninetwozero

+0

@Blundell 'yourCounter'라고 할 때 textView의 이름이나 Java 클래스의 이름을 의미합니까? – Mustafa

+0

또는 int의 이름입니까? – Mustafa

1

당신은 인스턴스 필드 또는 static 필드에서 카운터 상태를 저장해야합니다. 그런 다음 재설정시 해당 필드를 0으로 설정하십시오. 예를 들면 : 당신이 클릭 수를 계산하는 데 사용하는 어떤 재설정하지 않는 것처럼

private int counter = 0; 

// ... 

wreset = (Button) findViewById(R.id.wreset); 
wreset.setOnClickListener(new OnClickListener() 
{ 
    @Override 
    public void onClick(View arg0) 
    { 
     counter = 0; 
     txtCount.setText(String.valueOf(counter)); 
    } 
} 

increment = (Button) findViewById(R.id.increment); 
increment.setOnClickListener(new OnClickListener() 
{ 
    @Override 
    public void onClick(View arg0) 
    { 
     counter++; 
     txtCount.setText(String.valueOf(counter)); 
    } 
} 
0
public void onClick(View view) { 
    int count = 0; 
    count++;//increment the count 
    TextView text = (TextView) findViewById(R.id.counttxt);// resorce location 
    text.setText("No.of Clicks " + count);// view in the text 
+0

항상 1로 표시되지 않습니까? 숫자를 0으로 설정 한 다음 한 번 증가시킵니다. – sorak