2012-06-19 9 views
4

나는 내 뇌성 마비 소녀 용 소프트웨어를 개발했습니다. 그녀는 타블렛에서 그것을 사용하여 나와 아내와 "의사 소통"합니다.포커스를주는 ImageButton을 반복합니다. Android

꽤 좋습니다. 그것은 "온더 플라이 (on-the-fly)"방식으로 생성 된 ImageButtons입니다. XML 코드를 부 풀리는 것뿐입니다.

Sample image from my software

난 그냥 내 딸이 만든 : 여기

는 이미지 샘플입니다.

나는 근 위축성 측삭 경화증 (ALS)에 친구가 있습니다. 그것은 끔찍한 degerative 질병입니다. 그는 손가락 하나만 움직일 수 있고 나는 같은 소프트웨어를 사용할 수있게하고 싶습니다.

이렇게하려면 각 ImageButton을 "반복"해야하고 원하는 이미지에 초점이 맞춰지면 마우스를 "클릭하여 활성화"합니다.

는 여기에 설명되어있는 것을 사용하려고 :

http://developer.android.com/guide/topics/ui/accessibility/apps.html

그러나 그것은 작동하지 않았다. 이 작업을 수행하는 방법에 대한 아이디어가 있습니까? 이것은 내 ALS 친구에게 정말 유용 할 것입니다.

btn = (ImageButton) LayoutInflater.from(
getBaseContext()).inflate(
R.layout.imagebuttonstyle, fl, false); 

난 그냥 클릭을 처리하기 위해 "OnTouch"이벤트를 사용 : 여기

내가 ImageButtons을 만드는 방법이다. imagebuttonstyle은 ImageButton을 선언하는 XML 파일 일뿐입니다.

그래서, 너희들은 어떻게 생각하니? 항목을 반복하여 어떻게 할 수 있습니까? 원하는 사람이 초점을 맞추면 친구가 마우스를 클릭 할 때 활성화됩니다. 모든 항목을 쉽게 순환 할 수 있지만이 항목을 마우스로 활성화 할 수는 없습니다.

도움이 정말 감사합니다!

+0

안녕 Carlos, Android 위젯은 이미 집중 형입니다. ImageButton에 사용자 정의 모양을 사용하고있는 것으로 보입니다. 따라서 포커스가있는 상태 (즉, 다른 시각적 모양으로 단추 표시)를 처리하려면 단추에 적합한 드로어 블을 제공해야합니다. 코드에서 집중된 상태를 처리하는 것에 대해 걱정할 필요가 없다고 생각합니다. 나는 여러분이 어떤 컨트롤에 포커스가 있는지 걱정하지 않고 버튼에'onClickListener'를 제공 할 필요가 있다고 믿습니다. 일부 코드로 적절한 대답이 필요한 경우 알려주십시오. 친애하는. – davidcesarino

+1

ps : 그건 그렇고, 당신의 "꿈을위한 달러"캠페인에서 나온 데이빗이야! :) 좋은 목표로 여기에서 만나서 반갑습니다. – davidcesarino

+0

그는 마우스가 버튼 위로 움직이지 않는다고 말하면서 화면의 어딘가에서 클릭 할 것이라고 말한 것 같습니다.버튼 포커스는 다른 방법으로 변경 될 수 있습니다. 따라서 각 버튼마다 OnClickListener를 사용하기를 원하지 않는다고 생각합니다. 나도 몰라. 아마 내가 잘못 이해 한거야. –

답변

0

OnClickListener을 사용할 수 있습니까? this question을 보아라, 나는 그것이 당신이 갈 수있는 방향으로 가고 있다고 생각한다. 또는 전체 레이아웃을 클릭 할 수있게 만들 수도 있습니다. 그런 다음 isFocused()을 사용하여 선택할 항목을 결정할 수 있습니다. 예를 들어 :

LinearLayout linearLayout = (LinearLayout) findViewById(R.id.linear_layout); 
linearLayout.setOnClickListener(this); 

@Override 
public void onClick(View view){ 
    if (view == linearLayout){ 
     if (mingua.isFocused()){ 
      //mingua action 
     } else if (pao.isFocused()){ 
      //pao action 
     } //etc... 
    } 

}

난 당신이 클릭 리스너를 가지고 선형 레이아웃을 설정 할 수 있다면 긍정적 아니지만, 그래도 문제가 해결되지 않으면, 당신은 전체를 덮고 눈에 보이지 않는 버튼을 추가 할 수 있습니다 화면을 배경 레이어로 설정하고 onClickListener를 설정합니다. 행운을 빕니다.

+0

나는 리스너를 스스로 설정할 수 있고 호출보기를 확인할 수 있다고 생각합니다. – davidcesarino

관련 문제