TextView + ArrayList

  • 19 Antworten
  • Letztes Antwortdatum
P

paxis

Fortgeschrittenes Mitglied
0
Hallo Leute,

ich habe mal wieder ein Problem.... :D!
Ich wollte eigentlich nur ein kleines Programm schreiben, welches den Text aus einer TextView ausließt und durch Text aus einer ArrayList ersetzt!

Hier ist mal der Code:
Code:
public class MainActivity extends Activity implements OnClickListener {
    Object neuerText;
    
    String neuerTexts;
    int zähler=0;
    ArrayList<String> Geschichte1 = new ArrayList<String>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        
          
          Geschichte1.add(1,"0");
          Geschichte1.add(2,"1");
          Geschichte1.add(3,"2");
          Geschichte1.add(4,"1.1");
          Geschichte1.add(5,"1.2");
          Geschichte1.add(6,"2.1");
          Geschichte1.add(7,"2.2");
          Geschichte1.add(8,"1.1.1");
          Geschichte1.add(9,"1.1.2");
          Geschichte1.add(10,"1.2.1");
          Geschichte1.add(11,"1.2.2");
          Geschichte1.add(12,"2.1.1");
          Geschichte1.add(13,"2.1.2");
          Geschichte1.add(14,"2.2.1");
          Geschichte1.add(15,"2.2.2");
    [[.....]]
         
          
          Button Erster = (Button) findViewById(R.id.button1);
          Erster.setOnClickListener((OnClickListener) this);
          Button Zweiter = (Button) findViewById(R.id.button2);
          Zweiter.setOnClickListener((OnClickListener) this);
          
           
           ;           
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
   
    public void onClick(View v) {
        TextView Text1= (TextView) this.findViewById(R.id.textView1); 
switch(v.getId()) {

case R.id.button1:
    String aktTe=  Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    String newTe = Geschichte1.get(aktin*aktin);
    Text1.setText(newTe);
    zähler=zähler+1;
    
case R.id.button2:
String aktTe2= Text1.getText().toString(); //Soll das gleiche wie bei button //1 hin nur mit einer kleinen Veränderung später bzgl. des Textes der //eingefügt werden soll!
    int aktin2= Geschichte1.indexOf(aktTe2);
    String newTe2 = Geschichte1.get(aktin2*aktin2+1);
    Text1.setText(newTe2);
    zähler=zähler+1;
    }
}
}

Kann mir jemand verraten warum meine App abstürtzt sobald ich den Emulator starte?


Eigentlich ist das doch nur einfaches Typecasting...!
Wo ist denn mein Fehler?:mellow:

Hänge schon fast 1,5h dran....
 
Grundsätzlich fängt eine ArrayList in Java bei 0 an. (ich weiß nicht, ob es schlimm ist, ein bestimmtes Element zu "überspringen")

Ich würde in Deinem Fall doch einfach die "Add" Methode verwenden. Die hängt das jeweilige Element automatisch ans Ende der ArrayList an. ;)

Kannst Du mal einen Logcat-Auszug geben?
 
Ich glaube, dass das anfügen weniger das Problem ist, sondern eher das mit den Buttons!
Logcat:
Logcat kommt sofort moment!
Code:
06-30 18:14:15.563: E/ActivityThread(642): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d16e18 that was originally bound here
06-30 18:14:15.563: E/ActivityThread(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d16e18 that was originally bound here
06-30 18:14:15.563: E/ActivityThread(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:14:15.563: E/ActivityThread(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:14:15.563: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:14:15.563: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:14:15.563: E/ActivityThread(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:14:15.563: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:14:15.563: E/ActivityThread(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:14:15.563: E/ActivityThread(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:14:15.563: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:14:15.563: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:14:15.563: E/ActivityThread(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:14:15.582: E/StrictMode(642): null
06-30 18:14:15.582: E/StrictMode(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d16e18 that was originally bound here
06-30 18:14:15.582: E/StrictMode(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:14:15.582: E/StrictMode(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:14:15.582: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:14:15.582: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:14:15.582: E/StrictMode(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:14:15.582: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:14:15.582: E/StrictMode(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:14:15.582: E/StrictMode(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:14:15.582: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:14:15.582: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:14:15.582: E/StrictMode(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:14:15.582: W/ActivityManager(294): Unbind failed: could not find connection for android.os.BinderProxy@4102a110
06-30 18:14:15.632: E/ActivityThread(642): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d171c0 that was originally bound here
06-30 18:14:15.632: E/ActivityThread(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d171c0 that was originally bound here
06-30 18:14:15.632: E/ActivityThread(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:14:15.632: E/ActivityThread(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:14:15.632: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:14:15.632: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:14:15.632: E/ActivityThread(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:14:15.632: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:14:15.632: E/ActivityThread(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:14:15.632: E/ActivityThread(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:14:15.632: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:14:15.632: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:14:15.632: E/ActivityThread(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:14:15.763: E/StrictMode(642): null
06-30 18:14:15.763: E/StrictMode(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d171c0 that was originally bound here
06-30 18:14:15.763: E/StrictMode(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:14:15.763: E/StrictMode(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:14:15.763: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:14:15.763: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:14:15.763: E/StrictMode(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:14:15.763: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:14:15.763: E/StrictMode(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:14:15.763: E/StrictMode(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:14:15.763: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:14:15.763: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:14:15.763: E/StrictMode(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:14:15.763: W/ActivityManager(294): Unbind failed: could not find connection for android.os.BinderProxy@4102ab00
06-30 18:14:15.852: D/dalvikvm(642): GC_CONCURRENT freed 347K, 17% free 2449K/2920K, paused 75ms+71ms, total 214ms
06-30 18:14:18.820: E/ThrottleService(294): problem during onPollAlarm: java.lang.IllegalStateException: problem parsing stats: java.io.FileNotFoundException: /proc/net/xt_qtaguid/iface_stat_all: open failed: ENOENT (No such file or directory)
06-30 18:15:00.609: D/ExchangeService(642): Received deviceId from Email app: null
06-30 18:15:00.609: D/ExchangeService(642): !!! deviceId unknown; stopping self and retrying
06-30 18:15:05.642: D/ExchangeService(642): !!! EAS ExchangeService, onCreate
06-30 18:15:05.652: D/ExchangeService(642): !!! EAS ExchangeService, onStartCommand, startingUp = false, running = false
06-30 18:15:05.652: W/ActivityManager(294): Unable to start service Intent { act=com.android.email.ACCOUNT_INTENT } U=0: not found
06-30 18:15:05.652: D/ExchangeService(642): !!! Email application not found; stopping self
06-30 18:15:05.663: D/ExchangeService(642): !!! EAS ExchangeService, onStartCommand, startingUp = true, running = false
06-30 18:15:05.682: W/ActivityManager(294): Unable to start service Intent { act=com.android.email.ACCOUNT_INTENT } U=0: not found
06-30 18:15:05.712: E/ActivityThread(642): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d15aa8 that was originally bound here
06-30 18:15:05.712: E/ActivityThread(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d15aa8 that was originally bound here
06-30 18:15:05.712: E/ActivityThread(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:15:05.712: E/ActivityThread(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:15:05.712: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:15:05.712: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:15:05.712: E/ActivityThread(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:15:05.712: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:15:05.712: E/ActivityThread(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:15:05.712: E/ActivityThread(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:15:05.712: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:15:05.712: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:15:05.712: E/ActivityThread(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:15:05.752: E/StrictMode(642): null
06-30 18:15:05.752: E/StrictMode(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d15aa8 that was originally bound here
06-30 18:15:05.752: E/StrictMode(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:15:05.752: E/StrictMode(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:15:05.752: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:15:05.752: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:15:05.752: E/StrictMode(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:15:05.752: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:15:05.752: E/StrictMode(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:15:05.752: E/StrictMode(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:15:05.752: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:15:05.752: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:15:05.752: E/StrictMode(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:15:05.752: W/ActivityManager(294): Unbind failed: could not find connection for android.os.BinderProxy@40f455b0
06-30 18:15:05.792: E/ActivityThread(642): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d159f8 that was originally bound here
06-30 18:15:05.792: E/ActivityThread(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d159f8 that was originally bound here
06-30 18:15:05.792: E/ActivityThread(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:15:05.792: E/ActivityThread(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:15:05.792: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:15:05.792: E/ActivityThread(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:15:05.792: E/ActivityThread(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:15:05.792: E/ActivityThread(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:15:05.792: E/ActivityThread(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:15:05.792: E/ActivityThread(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:15:05.792: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:15:05.792: E/ActivityThread(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:15:05.792: E/ActivityThread(642):     at java.lang.Thread.run(Thread.java:856)
06-30 18:15:05.822: E/StrictMode(642): null
06-30 18:15:05.822: E/StrictMode(642): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d159f8 that was originally bound here
06-30 18:15:05.822: E/StrictMode(642):     at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
06-30 18:15:05.822: E/StrictMode(642):     at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
06-30 18:15:05.822: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1418)
06-30 18:15:05.822: E/StrictMode(642):     at android.app.ContextImpl.bindService(ContextImpl.java:1407)
06-30 18:15:05.822: E/StrictMode(642):     at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
06-30 18:15:05.822: E/StrictMode(642):     at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
06-30 18:15:05.822: E/StrictMode(642):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
06-30 18:15:05.822: E/StrictMode(642):     at java.util.concurrent.FutureTask.run(FutureTask.java:234)
06-30 18:15:05.822: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
06-30 18:15:05.822: E/StrictMode(642):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
06-30 18:15:05.822: E/StrictMode(642):     at java.lang.Thread.run(Thread.java:856)

Ach die Uhr davon geht 2 h nach ^^
 
Zuletzt bearbeitet:
Wie Max1809 schon angedeutet hat, kannst du nicht etwas an Position 1 in eine Liste schreiben, die noch eine Grösse von 0 hat. Ein Index beginnt immer bei 0, also musst du das erste Element an Position 0 in die Liste hängen (oder ganz auf den Index verzichten):

Code:
Geschichte1.add("0"); //automatisch an Position 0
Geschichte1.add("1"); //automatisch an Position 1
//usw.
 
Hab beides ausprobiert, sowohl mit Index 0, als auch ganz gelöscht! Leider immernoch vorhanden der Absturz der App :(!

Irgendwo nen Typecasting Fehler vielleicht? :O
 
Im Logcat vor dem editieren hattest du zumindest eine IndexOutOfBounds Exception in onCreate, die kam schon daher.

Im neuen Logcat sehe ich keine Logs zu deiner App, nur sehr viele Exceptions vom Email Service ;)

Aber es gibt sicher noch Punkte, wo Fehler auftreten können. Zum Beispiel wenn:
1) das Textfield leer ist
2) wenn etwas in der Liste nicht gefunden wird
3) Wenn der Index des gefundenen Elements zu gross ist und dann aktin * aktin grösser ist als die Liste
 
Am Anfang trifft allerdings keiner deiner 3 Punkte zu!
Am Anfang steht TextView drinnen, die List geht bis 33 und 3 kann ja schlecht eintreten, da es ja gar nicht so weit kommt!

Oder meinst das Eclipse das automatisch blockt?
 
Oh mein Fehler, habe irgendwie im Kopf gehabt, dass die App erst bei einem Button-Klick crasht ;)

Also sonst sehe ich keinen Fehler. Dein Cast
Code:
Erster.setOnClickListener((OnClickListener) this);

ist nicht nötig, sollte aber keinen Fehler verursachen (ausser, du hättest den falschen OnClickListener importiert, dann sollte aber Eclipse meckern)

Hab den Code testhalber mal bei mir laufen gelassen, die App startet einwandfrei, nachdem ich noch ein

Code:
Geschichte1.add(0, "0");

am Anfang in die Liste adde.

Am besten zeigst du nochmals einen Logcat-Auszug, wo man die Exception sehen kann
 
Okay das verwundert mich nun!

Ich habe jetzt folgenden Code:
Code:
package de.tobi.spieltest;


import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;


public class MainActivity extends Activity implements OnClickListener {
    Object neuerText;
    
    String neuerTexts;
    int zähler=0;
    ArrayList<String> Geschichte1 = new ArrayList<String>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        
         Geschichte1.add(0,"-1");
          Geschichte1.add(1,"0");
          Geschichte1.add(2,"1");
          Geschichte1.add(3,"2");
          Geschichte1.add(4,"1.1");
          Geschichte1.add(5,"1.2");
          Geschichte1.add(6,"2.1");
          Geschichte1.add(7,"2.2");
          Geschichte1.add(8,"1.1.1");
          Geschichte1.add(9,"1.1.2");
          Geschichte1.add(10,"1.2.1");
          Geschichte1.add(11,"1.2.2");
          Geschichte1.add(12,"2.1.1");
          Geschichte1.add(13,"2.1.2");
          Geschichte1.add(14,"2.2.1");
          Geschichte1.add(15,"2.2.2");
          Geschichte1.add(16,"Test16");
          Geschichte1.add(17,"Test17");
          Geschichte1.add(18,"Test18");
          Geschichte1.add(19,"Test19");
          Geschichte1.add(20,"Test20");
          Geschichte1.add(21,"Test21");
          Geschichte1.add(22,"Test22");
          Geschichte1.add(23,"Test23");
          Geschichte1.add(24,"Test24");
          Geschichte1.add(25,"Test25");
          Geschichte1.add(26,"Test26");
          Geschichte1.add(27,"Test27");
          Geschichte1.add(28,"Test28");
          Geschichte1.add(29,"Test29");
          Geschichte1.add(30,"Test30");
          Geschichte1.add(31,"Test31");
          Geschichte1.add(32,"Test32");
          Geschichte1.add(33,"Test33");
         
          
          Button Erster = (Button) findViewById(R.id.button1);
          Erster.setOnClickListener((OnClickListener) this);
          Button Zweiter = (Button) findViewById(R.id.button2);
          Zweiter.setOnClickListener((OnClickListener) this);
          
           
           ;           
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
   
    public void onClick(View v) {
        TextView Text1= (TextView) this.findViewById(R.id.textView1); 
switch(v.getId()) {

case R.id.button1:
    String aktTe=  Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    String newTe = Geschichte1.get(aktin*aktin);
    
    Text1.setText(newTe);
    zähler=zähler+1;
    
case R.id.button2:
    String aktTe2= Text1.getText().toString();
    int aktin2= Geschichte1.indexOf(aktTe2);
    String newTe2 = Geschichte1.get(aktin2*aktin2+1);
    Text1.setText(newTe2);
    zähler=zähler+1;
    }
}
}

XML:
Code:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="189dp"
        android:text="Erste Möglichkeit" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/button1"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="21dp"
        android:text="Zweite Möglichkeit" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_marginTop="26dp"
        android:layout_toLeftOf="@+id/button1"
        android:text="TextView" />

</RelativeLayout>

Errors:
Code:
06-30 20:02:30.930: E/AndroidRuntime(827): FATAL EXCEPTION: main
06-30 20:02:30.930: E/AndroidRuntime(827): java.lang.RuntimeException: Unable to start activity ComponentInfo{de.tobi.spieltest/de.tobi.spieltest.MainActivity}: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.Button
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.os.Handler.dispatchMessage(Handler.java:99)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.os.Looper.loop(Looper.java:137)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread.main(ActivityThread.java:5041)
06-30 20:02:30.930: E/AndroidRuntime(827):     at java.lang.reflect.Method.invokeNative(Native Method)
06-30 20:02:30.930: E/AndroidRuntime(827):     at java.lang.reflect.Method.invoke(Method.java:511)
06-30 20:02:30.930: E/AndroidRuntime(827):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
06-30 20:02:30.930: E/AndroidRuntime(827):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
06-30 20:02:30.930: E/AndroidRuntime(827):     at dalvik.system.NativeStart.main(Native Method)
06-30 20:02:30.930: E/AndroidRuntime(827): Caused by: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.Button
06-30 20:02:30.930: E/AndroidRuntime(827):     at de.tobi.spieltest.MainActivity.onCreate(MainActivity.java:63)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.Activity.performCreate(Activity.java:5104)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
06-30 20:02:30.930: E/AndroidRuntime(827):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
06-30 20:02:30.930: E/AndroidRuntime(827):     ... 11 more

Und bei dir läuft das einfach? :O
 
Versuch mal in Eclipse ein Project -> Clean oder lösche im Ordner gen die Datei R.java, Eclipse sollte sie dann sofort neu erstellen. Möglicherweise stimmen die generierten IDs nicht mehr.
 
Zuletzt bearbeitet:
Jetzt funktionierst!
danke!

Allerdings gibbet irgendwie nen logik Fehler!

Code:
case R.id.button1:
    String aktTe= Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    int newin= aktin+aktin;
    String newTe = Geschichte1.get(newin);
    Text1.setText(newTe);
    zähler=zähler+1;
    
case R.id.button2:
    String aktTe2= Text1.getText().toString();
    int aktin2= Geschichte1.indexOf(aktTe2);
    int newin2= aktin2+aktin2+1;
    String newTe2 = Geschichte1.get(newin2);
    Text1.setText(newTe2);
    zähler=zähler+1;
    }

Button 2 macht alles genau richtig, nur Button 1 spinnt rum!

Sagen wir mal erst ist aktin=2
Dementsprechend müsste er nach dem Code das Object an Stelle 4 öffnen, das tut er aber nicht, sondern einfach ganz anders...

Warum? :O

Sonst schonmal vielen danK!
 
da fehlt ein "break;"
In deinem Fall wird erst der Code von button1 ausgeführt und danach auch der von button2

ohne break geht der einfach in die nächste Zeile und führt diese dann aus.
 
jo danke!
Jetzt läuft alles rund!
 
Versuche nun gerade mit einem Input und Output stream das ganze sozusagen zu speichern, also wo ich stehen geblieben bin...!



Hat einer eine Ahnung wieso?


Das mit dem Button hat sich erledigt, allerdings funtioniert das "speichern" nicht! Ich habe im emulator mal die App beendet und neu gestartet und es begann wieder von vorne....!
Wieso? :O

hier der Code:

Laden:
Code:
  TextView Text1= (TextView) this.findViewById(R.id.textView1); 
          String Anfang = "0";
          int start=0;
          String FILENAME = "hello_file";
          String string = "hello world!";

          FileInputStream fos2;
          try {
               fos2 = openFileInput(Anfang);
              fos2.read();
            fos2.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
Speichern:
Code:
case R.id.button1:
    String aktTe= Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    int newin= aktin+aktin;
    String newTe = Geschichte1.get(newin);
    Text1.setText(newTe);
    zähler=zähler+1;
    String FILENAME =(String.valueOf(newin));
    String string =(String.valueOf(newin));
    
    FileOutputStream fos;
    try {
        fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
        fos.write(string.getBytes());
        fos.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    
    break;


Der ursprüngliche Beitrag von 16:21 Uhr wurde um 17:49 Uhr ergänzt:

Habe den Code mal umgeschrieben:

Code:
package de.tobi.spieltest;


import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;


public class MainActivity extends Activity implements OnClickListener {
    Object neuerText;
    
    String neuerTexts;
    int zähler=0;
    ArrayList<String> Geschichte1 = new ArrayList<String>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        

    
        
         Geschichte1.add(0,"-1");
         [....]
          Geschichte1.add(32,"Test32");
          Geschichte1.add(33,"Test33");
          TextView Text1= (TextView) this.findViewById(R.id.textView1); 
          String Anfang = "1";
          
          int start=0;
          String FILENAME = "hello_file";
          String string = "hello world!";

          FileInputStream fos2;
          
          

          try {

                FileInputStream instream = new FileInputStream("/sdcard/score");
                DataInputStream in = new DataInputStream(instream);
                Anfang += in.readInt();
                in.close();
                instream.close();
          } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

          
          
          start = Integer.parseInt(Anfang);          
          Text1.setText(Geschichte1.get(start));
          Button Erster = (Button) findViewById(R.id.button1);
          Erster.setOnClickListener((OnClickListener) this);
          Button Zweiter = (Button) findViewById(R.id.button2);
          Zweiter.setOnClickListener((OnClickListener) this);
          
           
           ;           
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
   
    public void onClick(View v) {
        TextView Text1= (TextView) this.findViewById(R.id.textView1); 
switch(v.getId()) {

case R.id.button1:
    String aktTe= Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    int newin= aktin+aktin;
    String newTe = Geschichte1.get(newin);
    Text1.setText(newTe);
    zähler=zähler+1;
    String FILENAME =(String.valueOf(newin));
    String string =(String.valueOf(newin));
    

    try {
        FileOutputStream stream = new FileOutputStream("/sdcard/score");
        DataOutputStream ps = new DataOutputStream(stream);
        ps.writeInt(newin);
        ps.close();
        stream.close();
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    break;
    
case R.id.button2:
    String aktTe2= Text1.getText().toString();
    int aktin2= Geschichte1.indexOf(aktTe2);
    int newin2= aktin2+aktin2+1;
    String newTe2 = Geschichte1.get(newin2);
    Text1.setText(newTe2);
    zähler=zähler+1;
    }
}
}
Jetzt stürtzt die App beim zweiten(!) starten ab!
Die berechtigung hat sie:
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="de.tobi.spieltest"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="de.tobi.spieltest.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Kann mir wer helfen? :O

Oder geht das Einlesen nicht, weil ich erst später was Speichere?
Gibt der dann nicht einfach null zurück?

Nachdem ich es nochmal gestartet habe, stürtzt sie direkt ab, kann es sein, dass ich ne datei erzeugen muss?
 
Zuletzt bearbeitet:
Hat sich erstmal geklärt :)!
 
Jetzt habe ich mal wieder nen Problem :'(!

Hab bisschen rumgeschrieben und es geht nicht mehr!
Daher mal zurückgeschrieben aber es geht nicht!
Hier mal der (zusammengefasste) Code:

Code:
public void onClick(View v) {
          f = new File(Environment.getExternalStorageDirectory()+"speicher.txt");
        TextView Text1= (TextView) this.findViewById(R.id.textView1); 
 Button Laden = (Button) findViewById(R.id.button3);
switch(v.getId()) {

case R.id.button3:
     try {
             FileInputStream fileIn =
             new FileInputStream(f);  //laden aus speicher.txt
             loadData(fileIn);
             Anfang=fileIn.toString();
             } catch (FileNotFoundException e) {
             e.printStackTrace();
             } 
    Text1.setText(Anfang);
    Laden.setVisibility(4);
    Löschen.setVisibility(4);
   
    zähler=1;
    
    break;
    

case R.id.button1:
    String aktTe= Text1.getText().toString();
    int aktin= Geschichte1.indexOf(aktTe);
    int newin= aktin+aktin;
    String newTe = Geschichte1.get(newin);
    Text1.setText(newTe);
    

    FileOutputStream out;
    
        
    

    try {
        out = new FileOutputStream(new File(Environment.getExternalStorageDirectory(),"speicher.txt")); //speichern
        out.write(newTe.getBytes());
        out.close();  
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    break;
    
case R.id.button2:
    String aktTe2= Text1.getText().toString();
    int aktin2= Geschichte1.indexOf(aktTe2);
    int newin2= aktin2+aktin2+1;
    String newTe2 = Geschichte1.get(newin2);
    Text1.setText(newTe2);
    
    
    
    
    FileOutputStream out2;
    try {
        
        out2 = new FileOutputStream(new File(Environment.getExternalStorageDirectory(),"speicher.txt"));
        out2.write(newTe2.getBytes());
        out2.close();  
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    }}
Kurz gesagt, irgendwo beim Laden oder Speichern wird dafür gesorgt, dass das nicht mehr aufgerufen werden kann, sobald ich die APP beende und das neu aus dem Txt Dokument laden möchte...!

Jemand Ne Idee woran es liegt?

Boar ist das ärgerlich....
 
Entgültig geklärt ~close please ;D~
 
Hatte das gelesen, wollte es aber mit .txt machen ;)

Erstellt mit einem Samsung galaxy, genauer mit dem s+ :D
 
Naja ok.. manche lassen sich ja auch gerne auspeitschen oder mit heißen Wachs übergießen oder an Nägeln an der Decke aufhängen.

Jeder wie er will ;)
 
Zurück
Oben Unten