2011-02-15 9 views
3

mediaplayer의 알림 표시 줄에 하나의 아이콘을 추가하고 싶습니다. 이제 알림 표시 줄을 드래그하여 4 개의 버튼과 같은보기를 추가하고 싶습니다.
어떻게하면됩니까?통지에보기를 추가하는 방법은 무엇입니까?

이 기능은 안드로이드의 기본 플레이어에 있습니다. 사용자가 화면을 종료하면 플레이어는 백그라운드에서 계속 재생되며 알림을 끌면 재생, 일시 중지, 다음 및 이전 기능이 있습니다.

답변

3

이것은 RemoteView를 사용하여 수행 할 수 있습니다. developer.android.com의이 기사는 꽤 좋은 설명입니다. http://developer.android.com/guide/topics/ui/notifiers/notifications.html

기본적으로 프로젝트의 레이아웃 폴더에서 정의한 레이아웃을 검색하여 통지의 ContentView로 설정하여 RemoteView를 만듭니다. 다음 사이트에서 발췌 한 것입니다 :

RemoteViews contentView = new RemoteViews(getPackageName(), R.layout.custom_notification_layout); 
contentView.setImageViewResource(R.id.image, R.drawable.notification_image); 
contentView.setTextViewText(R.id.text, "Hello, this message is in a custom expanded view"); 
notification.contentView = contentView; 

참고는 MediaController가 현재 상황에서 매우 유용하게 사용할 수 있습니다. 어쩌면이 사용자 정의보기에 직접 추가 할 수 있습니다. 나는 그것을 결코 시도하지 않고 있었다. 알림 용기보다는 버튼을 사용자가 클릭에 반응하기 때문에


당신이 언급 한 바와 같이 업데이트, 클릭 문제가 될 수 있습니다. 가능한 해결책은 Google이 연락처 목록의 단일 항목에 대한 클릭을 처리하는 방법과 유사 할 수 있습니다. 여기서 연락처 세부 정보를 열지 않고 목록 항목의 바로 오른쪽에있는 전화 기호를 클릭하여 직접 전화 통화를 시작할 수 있습니다 .
여기에 따라 소스 코드를 살펴 보자 : http://www.google.com/codesearch/p?hl=en#J8HqCFe1rOo/src/com/android/contacts/ContactListItemView.java&q=Android%20ContactList&sa=N&cd=4&ct=rc

당신은 거기 DontPressWithParentImageView 요소를 참조하십시오. 어떻게 작동하는지 살펴보고 이와 같은 버튼을 구현할 수 있습니다. 그게 효과가있을 수 있습니다.

+0

thankx juri하지만 mediacontroller.i에 대한 링크를 제공 할 수 있지만보기를 추가 할 수 있지만 전체 알림은 focus.i가 두 개의 버튼을 추가했지만 클릭 이벤트가 전체 layout.ie에 추가됩니다. 보기가 클릭 된 단추는 포커스를 얻지 못했습니다. – Hitendra

+0

@Hitendra 내 게시물에서 "MediaController"를 클릭하기 만하면 이미 공식 문서에 링크되어 있습니다. 클릭 문제에 대한 게시물을 업데이트했습니다. – Juri

+0

@Juri가 나에게 제안을한다. RemoteView를 사용하여이 링크 (stackoverflow.com/questions/14508369/...)와 같은 재생/일시 정지를 제어하는 ​​알림 큰보기를 빌드합니다. 모든 것이 올바르지 만 애플리케이션 클릭 이벤트 (재생/일시 중지/전달/닫기) 버튼이 작동하지 않습니다. 제발 도와주세요. –

관련 문제