එක් එක් පේළියේ රූප බොත්තම් කිහිපයක් සමඟ මට ලැයිස්තු දර්ශනයක් ඇත. ඔබ ලැයිස්තු පේළිය ක්ලික් කළ විට, එය නව ක්රියාකාරකමක් දියත් කරයි. කැමරා පිරිසැලසුම පිළිබඳ ගැටළුවක් නිසා මට මගේම ටැබ් සෑදීමට සිදුවිය. ප්රති result ලය සඳහා දියත් කරන ක්රියාකාරකම් සිතියමකි. රූප පෙරදසුන දියත් කිරීම සඳහා මම මගේ බොත්තම මත ක්ලික් කළහොත් (SD කාඩ් පතෙන් පින්තූරයක් පටවන්න) යෙදුම ක්රියාකාරකමේ සිට නැවත listview
ක්රියාකාරකම වෙත ප්රති result ල හසුරුවන්නා වෙත නැවත පැමිණ මගේ නව ක්රියාකාරකම නැවත ආරම්භ කිරීම සඳහා රූප විජට් එකකට වඩා වැඩි යමක් නැත.
ලැයිස්තු දර්ශනයේ රූප පෙරදසුන කර්සරය සමඟ සිදු කෙරේ ListAdapter
. මෙය ඉතා සරල කරයි, නමුත් මට ප්රතිනිර්මාණය කළ රූපයක් තැබිය හැක්කේ කෙසේදැයි මට විශ්වාස නැත (එනම් කුඩා බිට් ප්රමාණය පික්සෙල් නොව src
පියාසර බොත්තම සඳහා පියාසර කරයි. එබැවින් මම දුරකථන කැමරාවෙන් පිටතට පැමිණි රූපය ප්රමාණය වෙනස් කළෙමි.
ගැටළුව වන්නේ එය ආපසු ගොස් 2 වන ක්රියාකාරකම නැවත දියත් කිරීමට උත්සාහ කරන විට මට මතක දෝෂයක් ඇතිවීමයි.
- මම පියාසර තහනම් මත නැවත ප්රමාණය කළ හැකි පේළිය, විසින් පේළි (පහසුවෙන් ලැයිස්තුව ඇඩප්ටරය ගොඩනැගීමට හැකි ක්රමයක් තිබේද දෂ්ට නැණවත් )?
අවධානය යොමු කිරීමේ ගැටලුව නිසා ස්පර්ශ තිරය සමඟ පේළියක් තෝරා ගැනීමට නොහැකි බැවින් එක් එක් පේළියේ ඇති විජට් / මූලද්රව්යවල ගුණාංගවල යම් යම් වෙනස්කම් කිරීමට මට අවශ්ය බැවින් මෙය වඩාත් යෝග්ය වේ. ( මට රෝලර් බෝල භාවිතා කළ හැකිය. )
- මගේ ප්රතිරූපය නැවත සකස් කර සුරැකීමට මට හැකි බව මම දනිමි, නමුත් එය ඇත්ත වශයෙන්ම මට කිරීමට අවශ්ය දේ නොවේ, නමුත් ඒ සඳහා සමහර නියැදි කේත හොඳයි.
ලැයිස්තු දර්ශනයේ ඇති රූපය මා අක්රීය කළ වහාම එය නැවත හොඳින් ක්රියාත්මක විය.
FYI: මම මෙය කළේ මෙයයි:
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