A
Andi0310
Neues Mitglied
- 0
Hallo zusammen.
Ich habe ein Problem.
Ich programiere gerade ein Game mit Android Studio 2.2.
Es soll eine Digitaluhr in der rechten oberen Ecke ausgegeben werden, wegen dem Zeichenabstand habe ich Vier Buttons(die Uhr soll auch anklickbar sein) eingefügt.
Nun zum eigentlichen Problem.
Auf Galax Tab 2 (Android 4.2) und Tab 4 (Android 5) läuft die App einewand frei.Hier gibt es keine Probleme.
aber auf Galaxy S5(Android 6.0.1) und S6(Android 6.0.1) läuft sie wenn man sie aus der Installation heraus startet auch ohne Probleme.
Öffne ich sie dann aber vom App-Display aus stürzt der Thread ab.
Ich kann auch nicht Debugen, weill dabei die App immer neu istalliert wird dann gleich gestartet wird (wo sie ja funktioniert.).
Nun der Code zur entsprechenden Activity.
Kann mir jemand helfen ?
Ich habe ein Problem.
Ich programiere gerade ein Game mit Android Studio 2.2.
Es soll eine Digitaluhr in der rechten oberen Ecke ausgegeben werden, wegen dem Zeichenabstand habe ich Vier Buttons(die Uhr soll auch anklickbar sein) eingefügt.
Nun zum eigentlichen Problem.
Auf Galax Tab 2 (Android 4.2) und Tab 4 (Android 5) läuft die App einewand frei.Hier gibt es keine Probleme.
aber auf Galaxy S5(Android 6.0.1) und S6(Android 6.0.1) läuft sie wenn man sie aus der Installation heraus startet auch ohne Probleme.
Öffne ich sie dann aber vom App-Display aus stürzt der Thread ab.
Ich kann auch nicht Debugen, weill dabei die App immer neu istalliert wird dann gleich gestartet wird (wo sie ja funktioniert.).
Nun der Code zur entsprechenden Activity.
Code:
public class OfficeActivity extends Activity
{
public GameClass daten;
public Button hour1,hour2,minute1,minute2,doppelP;
String timebuffer;
public Thread thread;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO: Implement this method
super.onCreate(savedInstanceState);
setContentView(R.layout.office);
daten=new GameClass(getIntent());
hour1 = (Button) findViewById(R.id.hours1buero);
hour2 = (Button) findViewById(R.id.hours2buero);
minute1 = (Button) findViewById(R.id.minutes1buero);
minute2 = (Button) findViewById(R.id.minutes2buero);
doppelP = (Button) findViewById(R.id.doppelpunktbuero);
Typeface myFont = Typeface.createFromAsset(getAssets(), "fonts/myfontz.ttf");
doppelP.setTypeface(myFont);
hour1.setTypeface(myFont);
hour2.setTypeface(myFont);
minute1.setTypeface(myFont);
minute2.setTypeface(myFont);
addListenerOnButton();
gameloop();
}
public void gameloop()
{
final Handler handler=new Handler();
new Thread(new Runnable()
{
@Override
public void run() {
try {
Thread.sleep(1000);
} catch (Exception e) {}
thread = Thread.currentThread();
daten.Secunds += 1;
if (daten.Secunds >= 60 / daten.timeSpeed) {
daten.TimeMinutes++;
daten.Secunds = .0f;
}
if (daten.TimeMinutes > 59) {
daten.TimeHours += 1;
daten.TimeMinutes = 0;
}
if (daten.TimeHours > 23)
daten.TimeHours = 0;
if (daten.TimeHours < 10) timebuffer = "0" + daten.TimeHours;
else timebuffer = "" + daten.TimeHours;
if (daten.TimeMinutes < 10) timebuffer += "0" + daten.TimeMinutes;
else timebuffer += daten.TimeMinutes;
handler.post(new Runnable() {
@Override
public void run()
{
// Hier läuft alles ab.
hour1.setText("" + timebuffer.charAt(0));
hour2.setText("" + timebuffer.charAt(1));
minute1.setText("" + timebuffer.charAt(2));
minute2.setText("" + timebuffer.charAt(3));
gameloop();
}
});
}
}).start(); // Hier wird der Threat gestartet.
}
Kann mir jemand helfen ?