2017-03-10 5 views
1

Je suis nouveau pour le développement android. Essayer de faire un service de tuile, mais j'ai de la difficulté à remplacer l'action par appui long par défaut.long appuyez sur la touche de réglage rapide dans android

Pour cela, j'ai une classe appelée QSTileService qui s'étend TileService, et je veux que mon carreau pour faire des choses différentes selon que vous appuyez sur ou appuyez longuement il. ce que ive a trouvé jusqu'ici avec les boutons est d'implémenter l'interface OnLongClickListener et de remplir ce que vous voulez faire dans la méthode onLongClick, mais je ne suis pas sûr de savoir comment faire avec les carreaux de paramétrage rapide?

toute aide sera appréciée

+0

tutoriel Suivez service Google Tile: https://codelabs.developers.google.com/codelabs/android-n-quick -settings/index.html? index = ..% 2F ..% 2Findex # 0 – pRaNaY

+0

Je suis passé par le tutoriel mais je ne pense pas qu'il a abordé la façon de modifier l'action de presse longue par défaut. Mon carreau est un compteur et je veux qu'il incrémente le compte sur les robinets et réinitialiser sur une pression longue mais je n'ai pas été en mesure de trouver un moyen de changer le comportement de la presse pour réinitialiser, il va toujours aux paramètres de l'application page – mk360

Répondre

2

selon Documentation:

cliquant longuement sur votre tuile de réglages rapides, par défaut, allez à l'écran d'information de votre application. Vous pouvez remplacer ce comportement en ajoutant un intent-filter à un de vos activités comme ceci:

<intent-filter> 
    <action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES"/> 
</intent-filter> 
+0

Est-il possible de faire une longue pression sur la tuile faire quelque chose comme une diffusion, où je peux simplement créer un récepteur de diffusion pour appeler une méthode? – mk360

+0

Je ne sais pas si vous pouvez envoyer une diffusion ou démarrer un service en arrière-plan avec le même filtre d'intention. Mais vous pouvez démarrer une activité transparente fictive (ou une activité en tant que boîte de dialogue) et terminer immédiatement() l'activité après avoir diffusé votre événement à partir de la méthode onCreate elle-même. Mais avec ce panneau de configuration rapide sera fermé. vous devrez faire glisser à nouveau pour voir le panneau. –