android requestWindowFeature(Window.FEATURE_PROGRESS) ERROR -
i trying put progress status on windows view causing me error each time run app
package example.asynctaskdemo; import android.os.asynctask; import android.os.bundle; import android.support.v7.app.actionbaractivity; import android.view.menu; import android.view.menuitem; import android.view.window; import android.widget.arrayadapter; import android.widget.listview; import java.util.arraylist; public class asynctaskdemo extends actionbaractivity { private listview mainlist; private string[] texts = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14"}; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); requestwindowfeature(window.feature_progress); setcontentview(r.layout.activity_asynctaskdemo); mainlist = (listview)findviewbyid(r.id.my_list); mainlist.setadapter(new arrayadapter<string>(this, android.r.layout.simple_list_item_1, new arraylist<string>())); new myasync().execute(); } class myasync extends asynctask<void, string, void>{ private arrayadapter<string> adapter; private int counter = 0; @override protected void onpreexecute() { adapter = (arrayadapter<string>)mainlist.getadapter(); setprogressbarindeterminate(false); setprogressbarvisibility(true); } @override protected void doinbackground(void... params) { for(string item: texts){ publishprogress(item); try { thread.sleep(2000); } catch (interruptedexception e) { e.printstacktrace(); } } return null; } @override protected void onprogressupdate(string... values) { adapter.add(values[0]); counter++; setprogress((int)(((double)counter/texts.length)*10000)); } @override protected void onpostexecute(void avoid) { setprogressbarvisibility(false); debug_it.s(asynctaskdemo.this, "task has run successfully"); } } @override public boolean oncreateoptionsmenu(menu menu) { // inflate menu; adds items action bar if present. getmenuinflater().inflate(r.menu.menu_asynctaskdemo, menu); return true; } @override public boolean onoptionsitemselected(menuitem item) { // handle action bar item clicks here. action bar // automatically handle clicks on home/up button, long // specify parent activity in androidmanifest.xml. int id = item.getitemid(); //noinspection simplifiableifstatement if (id == r.id.action_settings) { return true; } return super.onoptionsitemselected(item); } } error:
03-31 19:34:18.960 1058-1058/example.asynctaskdemo e/androidruntime﹕ fatal exception: main process: example.asynctaskdemo, pid: 1058 java.lang.runtimeexception: unable start activity componentinfo{example.asynctaskdemo/example.asynctaskdemo.asynctaskdemo}: android.util.androidruntimeexception: requestfeature() must called before adding content @ android.app.activitythread.performlaunchactivity(activitythread.java:2195) @ android.app.activitythread.handlelaunchactivity(activitythread.java:2245) the compiler suggesting me use supportrequestwindowfeature(); need error , know difference between supportrequestwindowfeature() , requestwindowfeature();
use requestwindowfeature(window.feature_progress);
before super.oncreate(savedinstancestate);
it work. getting problem .
Comments
Post a Comment