Vibration in der Activity durch Bedingung in der View

  • Antworten:6
Darkside96
  • Forum-Beiträge: 18

08.06.2014, 17:51:31 via Website

Halle Leute.. Ich hab in meiner Custom View eine boolean-Variable "vibrate" deklariert und in meiner Acitvity angegeben, dass unter der Bedingung, dass vibrate in der View "true" ist, die Vibration durchgeführt werden soll. Nun ja ich hab es ziemlich richtig gemacht. Das hat mir folgender Versuch bestätigt. Ich habe es in die onCreate-Schleife gepackt.. auch unter der gleichen Bedingung natürlich und vibrate auf true gesetzt. Es hat beim Aufrufen der App vibriert. Nun da onCreate aber nur beim Starten gilt, denke ich brauche ich in der Activity eine void-Schleife, die durchgehend prüfen kann ob vibrate "true" ist. Ich habe es, wie es in der Einleitung steht in die public void vibration(){} gepackt , jedoch vibriert es nicht wenn ich es so mache. Was mache ich falsch?

Antworten
Michele
  • Forum-Beiträge: 1.525

08.06.2014, 18:03:32 via Website

Hallo Dark.

Wir müssten schon bisschen was von deinem
Code sehen um dir weiterhelfen zu können.

Dazu kannst du einfach eine while schleife nehmen
mit 1sek. Pause dazwischen.

Lg

Darkside96

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.640

08.06.2014, 18:10:03 via App

Versuch es mal mit einer While-Schleife in der onCreate

Bsp.

public void onCreate(Bundle SavedInstanceState) {
....
While (vibrieren = true)
{
vibriere;
}
}

P.s. Michele war schneller

— geändert am 08.06.2014, 18:10:31

Ich sammle gerne Namen in meinem Death Note.

Samsung Galaxy Note 2<3 -> Samsung Galaxy Note 3 <3

Darkside96

Antworten
Darkside96
  • Forum-Beiträge: 18

08.06.2014, 19:19:17 via Website

Also in der Activity habe ich geschrieben

public void vibrator(){
if(View.vibrate){
 Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate();
  }
}

und in der View

public static boolean vibrate;
....
if(blablabla){
vibrate = true;

Also mehr ist da auch nicht... Aber ich versuch das mit der while-Schleife mal :)
LG

Antworten
Mac Systems
  • Forum-Beiträge: 1.727

08.06.2014, 19:39:31 via Website

while in jeder android lifecycle methode wird deine APP zu einen ANR führen ;)

Was du brauchst ist ein listener/Callback mit dem du das vibrate auslösen kannst.

Windmate HD, See you @ IO 14 , Worked on Wundercar, Glass V3, LG G Watch, Moto 360, Android TV

San Blarnoi

Antworten
Darkside96
  • Forum-Beiträge: 18

11.06.2014, 18:09:03 via Website

Ok. Danke! Klingt logisch, aber ich hab bisher das Thema Listener und Callback gemieden, da ich es nur wenig verstehe. Könnte mir jemand dabei auf die Sprünge helfen, wie ich einen Callback für die Vibration programmieren könnte? Danke schon mal :))
LG

Antworten
Georg C.
  • Forum-Beiträge: 235

11.06.2014, 20:11:08 via Website

Hallo,
callback repräsentiert mit sich einen Mechanismus.

KLICK

Ein Listener ist nichts anderes als ein Lauscher- Mechanismus.
Ihr (viele) verwenden es ohne es darüber zu wissen, .... .

Ein Listener - also quasi ein Lauscher - lauscht (WARTET!) auf ein bestimmtes EREIGNIS!
Es muss nicht unbedingt ein Button sein!

Nach etwas Recherche, (my- link) solltest du in der Lage zu sein einen simplen listener/Callback implementieren können.

LG
Georg

Sorry für Gramatik & Stilistik Fehler.

Darkside96

Antworten