2014-01-30 3 views
-3

우선 안드로이드를 배우고 있습니다. 내 삼성 갤럭시 S1에서 내 안드로이드 앱을 테스트하고 있습니다.안드로이드 장치 백 버튼이 작동하지 않아야합니다

내 앱 기능 : RandomNumber 버튼을 누르는 동안 난수가 생성되고 TextArea의 화면에 표시됩니다.

하지만 아래 문제에 직면하고 있습니다.

  1. 장치 뒤로 단추를 사용하면 사용자가 돌아갈 수 있습니다. 어떻게 피할 수 있니? (나는 프로그램에서 동적으로 정의 된 버튼을 가지고 있으며 뒤로 버튼 만 작동해야 함)

  2. 전화를 흔들거나 전화 위치를 변경하는 동안 임의 번호가 자동으로 생성됩니다. 어떻게 피하는거야?. 제발 조언.

버튼 만들기 동적

final Button buttonToAdd = new Button(this); 
      buttonToAdd.setText("RandomNumber"); 

리스너 :

buttonToAdd.setOnClickListener(new OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Strvalue = (String) buttonToAdd.getText(); 
       if (Strvalue.equals("RandomNumber")) 
       { 
        Randomnumbergeneration(); 
       } 
     } 
    }); 
+2

장치 "버튼"의 동작을 변경하지 않아도됩니다. –

+0

전화 _shaking 및 _moving it_의 의미를 설명하십시오. 오리엔테이션을 바꾸는 것을 의미합니까? – Endzeit

+0

일반적으로 화면을보고 나면 전화기를 돌릴 것입니다. – user3127462

답변

3

당신은 백 버튼 클릭 이벤트를 처리 할 수있는 ActivitiesonBackPressed() 방법을 덮어 쓸 수 있습니다.

@Override 
public void onBackPressed() { 
    // put some code here or just do nothing 
    // don't call super.onBackPressed() if you want to disable the back function 
} 

그러나 당신은 당신이 official design guidelines을 따라야하고 모든 안드로이드 사용자가 사용되며, 그 가능성 뒤로 버튼 더 이상 작동하지 않는 경우 찾을 수 있기 때문에이 동작을 사용하지 않는 응용 프로그램을 게시 할 경우.

+1

또한 재정의 주석을 추가해야합니다. – Lefteris

+0

@Lefteris 나는 나의 대답을 편집했다. 조언 해주셔서 감사합니다. :) – Endzeit

관련 문제