আমার প্রতিটি সারিতে বেশ কয়েকটি চিত্রের বোতামের সাথে একটি তালিকা ভিউ রয়েছে। আপনি তালিকার সারিটিতে ক্লিক করলে এটি একটি নতুন ক্রিয়াকলাপ শুরু করে। ক্যামেরা লেআউটে কোনও সমস্যা থাকায় আমাকে নিজের ট্যাবগুলি তৈরি করতে হয়েছিল। ফলাফলের জন্য যে ক্রিয়াকলাপটি আরম্ভ হয় তা হ'ল একটি মানচিত্র। আমি যদি আমার বাটনে ক্লিক করে চিত্রের পূর্বরূপ চালু করতে (এসডি কার্ডের বাইরে একটি চিত্র লোড করুন) অ্যাপ্লিকেশনটি কার্যকলাপ থেকে ফিরিয়ে listview
নিয়ে আসে ফলাফলের হ্যান্ডেলারটিতে আমার নতুন ক্রিয়াকলাপটি পুনরায় লঞ্চ করতে যা কোনও চিত্র উইজেট ছাড়া আর কিছু নয়।
তালিকা ভিউতে চিত্র পূর্বরূপ কার্সার এবং দিয়ে করা হচ্ছে ListAdapter
। এটি একেবারে সহজ করে তোলে তবে আমি কীভাবে পুনরায় আকারযুক্ত চিত্র রাখতে পারি তা নিশ্চিত নই ( src
উড়ানের চিত্রের বোতামের জন্য ছোট আকারের বিট আকার পিক্সেল নয় So তাই আমি কেবল ফোন ক্যামেরা থেকে আসা চিত্রটির আকার পরিবর্তন করেছি ized
সমস্যাটি হ'ল এটি যখন ফিরে যেতে এবং ২ য় ক্রিয়াকলাপটি পুনরায় চালু করার চেষ্টা করে তখন আমি স্মৃতি ত্রুটি থেকে বেরিয়ে আসি।
- আমি কীভাবে তালিকাটিতে অ্যাডাপ্টারটি সারি সারি সারি তৈরি করতে পারি, যেখানে আমি উড়ে আবার আকার পরিবর্তন করতে পারি ( বিট ওয়াইস )?
এটি অগ্রাধিকারযোগ্য হবে কারণ আমার প্রতিটি সারিতে উইজেট / উপাদানগুলির বৈশিষ্ট্যগুলিতেও কিছু পরিবর্তন আনতে হবে কারণ ফোকাস সমস্যার কারণে আমি টাচ স্ক্রিনের সাথে একটি সারি নির্বাচন করতে অক্ষম। ( আমি বেলন বল ব্যবহার করতে পারেন। )
- আমি জানি যে আমি ব্যান্ডের আকার পরিবর্তন এবং আমার চিত্রটি সংরক্ষণ করতে পারি, তবে আমি যা করতে চাই তা আসলে তা নয়, তবে এর জন্য কয়েকটি স্যাম্পল কোডটি দুর্দান্ত হবে।
তালিকার দৃশ্যে ছবিটি অক্ষম করার সাথে সাথেই এটি আবার ঠিকঠাক হয়ে গেছে।
এফওয়াইআই: আমি এটি এটিই করছিলাম:
String[] from = new String[] { DBHelper.KEY_BUSINESSNAME,DBHelper.KEY_ADDRESS,DBHelper.KEY_CITY,DBHelper.KEY_GPSLONG,DBHelper.KEY_GPSLAT,DBHelper.KEY_IMAGEFILENAME + ""};
int[] to = new int[] {R.id.businessname,R.id.address,R.id.city,R.id.gpslong,R.id.gpslat,R.id.imagefilename };
notes = new SimpleCursorAdapter(this, R.layout.notes_row, c, from, to);
setListAdapter(notes);
কই R.id.imagefilename
ক ButtonImage
।
এখানে আমার লগকেট:
01-25 05:05:49.877: ERROR/dalvikvm-heap(3896): 6291456-byte external allocation too large for this process.
01-25 05:05:49.877: ERROR/(3896): VM wont let us allocate 6291456 bytes
01-25 05:05:49.877: ERROR/AndroidRuntime(3896): Uncaught handler: thread main exiting due to uncaught exception
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): java.lang.OutOfMemoryError: bitmap size exceeds VM budget
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.graphics.BitmapFactory.nativeDecodeStream(Native Method)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:304)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:149)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.graphics.BitmapFactory.decodeFile(BitmapFactory.java:174)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.graphics.drawable.Drawable.createFromPath(Drawable.java:729)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.ImageView.resolveUri(ImageView.java:484)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.ImageView.setImageURI(ImageView.java:281)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.SimpleCursorAdapter.setViewImage(SimpleCursorAdapter.java:183)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.SimpleCursorAdapter.bindView(SimpleCursorAdapter.java:129)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.CursorAdapter.getView(CursorAdapter.java:150)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.AbsListView.obtainView(AbsListView.java:1057)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.ListView.makeAndAddView(ListView.java:1616)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.ListView.fillSpecific(ListView.java:1177)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.ListView.layoutChildren(ListView.java:1454)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.AbsListView.onLayout(AbsListView.java:937)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.View.layout(View.java:5611)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1119)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.layoutHorizontal(LinearLayout.java:1108)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.onLayout(LinearLayout.java:922)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.View.layout(View.java:5611)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.FrameLayout.onLayout(FrameLayout.java:294)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.View.layout(View.java:5611)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1119)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.layoutVertical(LinearLayout.java:999)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.LinearLayout.onLayout(LinearLayout.java:920)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.View.layout(View.java:5611)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.widget.FrameLayout.onLayout(FrameLayout.java:294)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.View.layout(View.java:5611)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.ViewRoot.performTraversals(ViewRoot.java:771)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.view.ViewRoot.handleMessage(ViewRoot.java:1103)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.os.Handler.dispatchMessage(Handler.java:88)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.os.Looper.loop(Looper.java:123)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at android.app.ActivityThread.main(ActivityThread.java:3742)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at java.lang.reflect.Method.invokeNative(Native Method)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at java.lang.reflect.Method.invoke(Method.java:515)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:497)
01-25 05:05:49.917: ERROR/AndroidRuntime(3896): at dalvik.system.NativeStart.main(Native Method)
01-25 05:10:01.127: ERROR/AndroidRuntime(3943): ERROR: thread attach failed
ছবিটি প্রদর্শন করার সময় আমারও একটি নতুন ত্রুটি রয়েছে:
01-25 22:13:18.594: DEBUG/skia(4204): xxxxxxxxxxx jpeg error 20 Improper call to JPEG library in state %d
01-25 22:13:18.604: INFO/System.out(4204): resolveUri failed on bad bitmap uri:
01-25 22:13:18.694: ERROR/dalvikvm-heap(4204): 6291456-byte external allocation too large for this process.
01-25 22:13:18.694: ERROR/(4204): VM won't let us allocate 6291456 bytes
01-25 22:13:18.694: DEBUG/skia(4204): xxxxxxxxxxxxxxxxxxxx allocPixelRef failed