2012-09-05 4 views
4

가능한 중복 :
How would one implement a NumberPicker in Android API 7?대안 8

나는이가 할 수있는 내 UI에서 12 공간의 범위는 0에서 작은 정수를 선택해야

제한되어 있고 키가 큰 것보다 넓어야합니다. API 8에서 위젯을 사용할 수 있습니까?

편집 : 이전 SO 질문 중복 가능. 나는 밀접하게 관련된 질문을 보았다. 그러나 A)는 "가로 방향"제한을 만들지 않았다. 그리고 B) api 11에서 코드를 복사 할 수 있다는 제안은 정확한 수행 방법을 설명하지 않았다.

+0

seekbar, 아마도? – njzk2

답변

8

가장 쉬운 (그러나 가장 추악한) 것은 inputtype 번호가있는 edittext입니다.

하지만 숫자 선택 도구를 처음부터 만드는 것은 그렇게 어렵지 않습니다.

변수를 텍스트로 사용하는 Textview가 필요합니다. 버튼을 증가/변수를 감소하고 Textview.setText 전화 (변수) XML에서

counter = 0; 
add = (Button) findViewById(R.id.bAdd); 
sub = (Button) findViewById(R.id.bSub); 
display = (TextView) findViewById(R.id.tvDisplay); 

add.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View v) { 
    counter++; 
    display.setText("" + counter); 
    } 
}); 

sub.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View v) { 
    counter--; 
    display.setText("" + counter); 
    } 
}); 

} 

단 2 개 ID BADD 및 BSUB와 버튼 및 ID tvDisplay와 텍스트 뷰를 추가하고 원하는처럼 배열 - A + 및 추가

+0

이것은이 하나가 복제하는 실에서 훨씬 더 나은 대답입니다. – avalancha

1

이 항목을 보려면보십시오 Custom Number Picker. 먼저 컨트롤의 레이아웃을 가로 방향으로 수정하십시오.

또 다른 옵션은 Android 2.3.4 NumberPicker 및 NumberPickerButton의 소스 코드를 찾아서 복사하는 것입니다. 또한 이러한 컨트롤에 필요한 리소스를 복사해야합니다. 다시 말하지만, 버튼 레이아웃을 가로 방향으로 수정해야합니다.

API 11 이상의 NumberPicker를 사용하지 않는 것이 좋습니다. 최신 수업에는 API 8을 사용할 수없는 수많은 직능이 있다는 것을 알게 될 것입니다.