클릭 이벤트 추가 사용자 정의
3613 단어 Android
이전 글에서 에서 우리는 사용자 정의 인터페이스를 실현했다. 그러면 우리는 사용자 정의 인터페이스에 클릭 이벤트를 어떻게 추가해야 합니까?쿨개가 알림판에'이전곡','다음곡'등 컨트롤 버튼이 있는 것처럼 우리는 버튼의 클릭 이벤트에 응답해야 하지만 방법은 이전의 클릭 설정과 다르기 때문에 따로 처리해야 한다. 다음은 간단한 설명을 드리겠습니다.
이루어지다
마찬가지로 Service의 하위 클래스인 My Service가 필요합니다. My Service의 onCreate에서 다음과 같은 코드를 설정합니다.
public class MyService extends Service {
public static final String ONCLICK = "com.app.onclick";
private BroadcastReceiver receiver_onclick = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ONCLICK)) {
Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(1000);
}
}
};
@Override
public void onCreate() {
super.onCreate();
Notification notification = new Notification(R.drawable.ic_launcher,
"JcMan", System.currentTimeMillis());
RemoteViews view = new RemoteViews(getPackageName(),R.layout.notification);
notification.contentView = view;
IntentFilter filter_click = new IntentFilter();
filter_click.addAction(ONCLICK);
//
registerReceiver(receiver_onclick, filter_click);
Intent Intent_pre = new Intent(ONCLICK);
// PendingIntent
PendingIntent pendIntent_click = PendingIntent.getBroadcast(this, 0, Intent_pre, 0);
//
notification.contentView.setOnClickPendingIntent(R.id.btn,pendIntent_click);
//
startForeground(1, notification);
}
@Override
public IBinder onBind(Intent intent) {
return null;
}
}
보시다시피 우리는 먼저 Broadcast Receiver의 대상을 얻은 다음에 온 Receiver에서 우리의 조작을 실현한다. 내가 클릭할 때 핸드폰이 1초 동안 진동하도록 설정했다. 물론 설정 파일에 진동 권한을 추가하는 것을 잊지 마라. 그렇지 않으면 오류가 발생할 것이다.만약에 방송에 대해 잘 모르면 먼저 방송의 메커니즘을 알아볼 수 있다. 여기서 나는 동적 등록 방송의 방법을 사용하고 또 다른 방법으로 등록한다. 그러나 나는 동적 등록을 더 좋아할 뿐이다.
소결
Notification에 ProgressBar를 추가하여 다운로드를 실현하는 진도 알림을 보려면 Notification 인터페이스를 업데이트하는 지식이 필요합니다. Activity에서 인터페이스를 업데이트하는 것과 다르지만 복잡하지는 않습니다. 제가 이 분야의 지식을 사용하지 않았기 때문에 여러분께 소개하지 않겠습니다. 관심 있는 사람은 관련 내용을 검색할 수 있습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.