Xamarin.forms: Xamarin.Forms 3.5.0.129452์™€ ํ•จ๊ป˜ Syncfusion SfListView๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋„ค์ดํ‹ฐ๋ธŒ ์ถฉ๋Œ

์— ๋งŒ๋“  2019๋…„ 02์›” 17์ผ  ยท  99์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: xamarin/Xamarin.Forms

๊ธฐ์ˆ 

Syncfusion SfListView ์ปจํŠธ๋กค์„ ์‚ฌ์šฉํ•  ๋•Œ Xamarin.Forms 3.5.0.129452๊ฐ€ ๋„ค์ดํ‹ฐ๋ธŒ ์ถฉ๋Œ๊ณผ ์ถฉ๋Œ ํ•จ

์žฌํ˜„ ๋‹จ๊ณ„

  1. https://github.com/SyncfusionExamples/ListView-GettingStarted-in-Xamarin-Forms ๋ณต์ œ
  2. Syncfusion.Xamarin.SfListView ์„ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๊ณ  Xamarin.Forms ์„ 3.5.0.129452๋กœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
  3. ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์ƒ๋˜๋Š” ๋™์ž‘

์•ฑ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๊ณ  ๋ชฉ๋ก๋ณด๊ธฐ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์‹ค์ œ ํ–‰๋™

์•ฑ ์ถฉ๋Œ

๊ธฐ๋ณธ ์ •๋ณด

  • ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๋ฒ„์ „ : 3.5.0.129452
  • ๋งˆ์ง€๋ง‰์œผ๋กœ ์•Œ๋ ค์ง„ ์–‘ํ˜ธํ•œ ๋ฒ„์ „ : 3.4.0.1029999
  • IDE : Visual Studion 2017
  • ํ”Œ๋žซํผ ๋Œ€์ƒ ํ”„๋ ˆ์ž„ ์›Œํฌ :

    • ์•ˆ๋“œ๋กœ์ด๋“œ : 8.1

  • Android ์ง€์› ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฒ„์ „ : 27.0.2.1
blocker 5 high regression Android partner bug

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ด ํŠน์ • ์ˆ˜์ • ์‚ฌํ•ญ์€ 3/29์— ์™„๋ฃŒ ๋  ์˜ˆ์ •์ธ Sprint 150์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ์‹ค์ œ ํ”„๋กœ๋•์…˜ ์ค€๋น„ ์ˆ˜์ •์ด ๊ทธ๋•Œ๊นŒ์ง€ ํ‘ธ์‹œ ๋ ์ง€ ์•Œ ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์‹ฌ๊ฐํ•œ ํšŒ๊ท€์ž…๋‹ˆ๋‹ค. ์ฆ‰์‹œ ์ˆ˜์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š”์ด ํšŒ๊ท€๋ฅผ ๋‹ด๋‹นํ•˜๋Š” XF3.5์—์„œ ์ปค๋ฐ‹์„ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ ๋๋‚ฌ์Šต๋‹ˆ๊นŒ?

๋ชจ๋“  99 ๋Œ“๊ธ€

๋‹ค์Œ์€ ์Šคํƒ ์ถ”์ ์ž…๋‹ˆ๋‹ค.

02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] JNI DETECTED ERROR IN APPLICATION : negative jsize : -443686848
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] in call to NewIntArray
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] from void md5e6dceb8716288c40551f253cf2268d49.MainActivity.n_onCreate (android.os.Bundle)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] "main"prio = 5 tid = 1 Runnable
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] | group = "main"sCount = 0 dsCount = 0 obj = 0x75bb0268 self = 0xf4305400
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] | sysTid = 18225 nice = 0 cgrp = default sched = 0 / 0 ํ•ธ๋“ค = 0xf7582534
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] | state = R schedstat = (000) utm = 278 stm = 41 core = 3 HZ = 100
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] | ์Šคํƒ = 0xff4e7000-0xff4e9000 stackSize = 8MB
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] | ๋ณด๋ฅ˜ ๋œ ๋ฎคํ…์Šค = "๋ฎค ํ…Œ์ดํ„ฐ ์ž ๊ธˆ"(๊ณต์œ  ๋ณด๋ฅ˜)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 00 pc 00351799 /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEvEEiP12BacktraceMapPKcPNS_9ArtMethodEPvEEiP12)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 01 pc 00331cb5 /system/lib/libart.so (_ZNK3art6Thread9DumpStackERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEbP12BacktraceMap + 304)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 02 pc 0023a07f /system/lib/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_ + 846)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 03 pc 0023a5b7 /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list + 58)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 04 pc 000ca893 /system/lib/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz + 42)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 05 pc 000ca841 /system/lib/libart.so (_ZN3art11ScopedCheck17CheckNonHeapValueEcNS_12JniValueTypeE + 164)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 06 pc 000c94ff /system/lib/libart.so (_ZN3art11ScopedCheck22CheckPossibleHeapValueERNS_18ScopedObjectAccessEcNS_12JniValueTypeE + 130)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 07 pc 000c8969 /system/lib/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE + 800)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 08 pc 000cfcb9 /system/lib/libart.so (_ZN3art8CheckJNI17NewPrimitiveArrayEPKcP7_JNIEnviNS_9Primitive4TypeE + 452)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] native : # 09 pc 000166cc (???)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at md5e6dceb8716288c40551f253cf2268d49.MainActivity.n_onCreate (Native method)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at md5e6dceb8716288c40551f253cf2268d49.MainActivity.onCreate (MainActivity.java:29)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.Activity.performCreate (Activity.java:6955)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1126)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2927)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3045)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.ActivityThread.-wrap14 (ActivityThread.java:-1)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1642)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.os.Handler.dispatchMessage (Handler.java:102)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.os.Looper.loop (Looper.java:154)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at android.app.ActivityThread.main (ActivityThread.java:6776)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at java.lang.reflect.Method.invoke! (Native method)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:1496)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470] at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1386)
02-17 17 : 44 : 49.406 F / art (18225) : art / runtime / java_vm_ext.cc : 470]
02-17 17 : 44 : 49.560 F / art (18225) : art / runtime / runtime.cc : 419] ๋Ÿฐํƒ€์ž„ ์ค‘๋‹จ ์ค‘ ...

๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. SDK ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•˜์ง€ ์•Š์œผ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€๋งŒ ๊ฒฐ๊ตญ ๊ฑฐ๋Œ€ํ•œ APK๊ฐ€ ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ๋””๋ฒ„๊ทธ ๋นŒ๋“œ์—์„œ ์Šคํƒ ์ถ”์ ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค (๊ณต์œ  ๋Ÿฐํƒ€์ž„์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  SDK ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ๋””๋ฒ„๊ทธ์—์„œ ์žฌํ˜„ ํ•  ์ˆ˜ ์žˆ์Œ).

๋˜ํ•œ XF 4.0 ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋กœ ์žฌํ˜„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ฐ„๋‹จํžˆ XF 3.4.0.1029999๋กœ ๋กค๋ฐฑํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

02-18 23 : 17 : 01.789 D / Mono (31151) : ์–ด์…ˆ๋ธ”๋ฆฌ ์ฐธ์กฐ addref Syncfusion.SfPullToRefresh.XForms.Android [0xe64f1e20]-> Xamarin.Android.Support.SwipeRefreshLayout [0xe640f540] : 3
02-18 23 : 17 : 01.815 E / art (31151) : JNI๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์˜ค๋ฅ˜๋ฅผ ๊ฐ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์Œ์ˆ˜ jsize : -443686848
referenceTable GDEF ๊ธธ์ด = 814 1
referenceTable GSUB ๊ธธ์ด = 11364 1
referenceTable GPOS ๊ธธ์ด = 47302 1
์ฐธ์กฐ ํ…Œ์ด๋ธ” ํ—ค๋“œ ๊ธธ์ด = 54 1
02-18 23 : 17 : 01.815 E / art (31151) : NewIntArray ํ˜ธ์ถœ ์ค‘
02-18 23 : 17 : 01.815 E / art (31151) : from android.view.View md58432a647068b097f9637064b8985a5e0.FragmentContainer.n_onCreateView (android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)
02-18 23 : 17 : 01.815 E / art (31151) : "main"prio = 5 tid = 1 Runnable
02-18 23 : 17 : 01.815 E / art (31151) : | group = "main"sCount = 0 dsCount = 0 obj = 0x761414e0 self = 0xf48b6a00
02-18 23 : 17 : 01.815 E / art (31151) : | sysTid = 31151 nice = -10 cgrp = default sched = 0 / 0 handle = 0xf72c7de4
02-18 23 : 17 : 01.815 E / art (31151) : | state = R schedstat = (5251775448 129778313 2725) utm = 463 stm = 62 core = 8 HZ = 100
02-18 23 : 17 : 01.815 E / art (31151) : | ์Šคํƒ = 0xff691000-0xff693000 stackSize = 8MB
02-18 23 : 17 : 01.815 E / art (31151) : | ๋ณด๋ฅ˜ ๋œ ๋ฎคํ…์Šค = "๋ฎค ํ…Œ์ดํ„ฐ ์ž ๊ธˆ"(๊ณต์œ  ๋ณด๋ฅ˜)
02-18 23 : 17 : 01.815 E / art (31151) : native : # 00 pc 0034d679 /system/lib/libart.so (_ZN3art15DumpNativeStackERNSt3__113basic_ostreamIcNS0_11char_traitsIcEEEEiP12BacktraceMapPKcPNS_9ArtMethodEPv + 204)
02-18 23 : 17 : 01.815 E / art (31151) : native : # 01 pc 0032dfe9 /system/lib/libart.so (_ZNK3art6Thread4DumpERNSt3__113basic_ostreamIcNS1_11char_traitsIcEEEEP12BacktraceMap + 148)
02-18 23 : 17 : 01.815 E / art (31151) : native : # 02 pc 0024116f /system/lib/libart.so (_ZN3art9JavaVMExt8JniAbortEPKcS2_ + 902)
02-18 23 : 17 : 01.815 E / art (31151) : native : # 03 pc 00241803 /system/lib/libart.so (_ZN3art9JavaVMExt9JniAbortVEPKcS2_St9__va_list + 54)
02-18 23 : 17 : 01.815 E / art (31151) : ๋„ค์ดํ‹ฐ๋ธŒ : # 04 pc 000edf95 /system/lib/libart.so (_ZN3art11ScopedCheck6AbortFEPKcz + 28)
02-18 23 : 17 : 01.815 E / art (31151) : ๋„ค์ดํ‹ฐ๋ธŒ : # 05 pc 000f2f63 /system/lib/libart.so (_ZN3art11ScopedCheck5CheckERNS_18ScopedObjectAccessEbPKcPNS_12JniValueTypeE.constprop.95 + 5350)
02-18 23 : 17 : 01.815 E / art (31151) : ๋„ค์ดํ‹ฐ๋ธŒ : # 06 pc 000fc9cd /system/lib/libart.so (_ZN3art8CheckJNI17NewPrimitiveArrayEPKcP7_JNIEnviNS_9Primitive4TypeE + 364)
02-18 23 : 17 : 01.815 E / art (31151) : native : # 07 pc 00017a9c (???)
02-18 23 : 17 : 01.815 E / art (31151) : at md58432a647068b097f9637064b8985a5e0.FragmentContainer.n_onCreateView (Native method)
02-18 23 : 17 : 01.815 E / art (31151) : md58432a647068b097f9637064b8985a5e0.FragmentContainer.onCreateView (FragmentContainer.java:33)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.Fragment.performCreateView (Fragment.java:2439)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.FragmentManagerImpl.moveToState (FragmentManager.java:1460)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState (FragmentManager.java:1784)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.FragmentManagerImpl.moveToState (FragmentManager.java:1852)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.BackStackRecord.executeOps (BackStackRecord.java:802)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.FragmentManagerImpl.executeOps (FragmentManager.java:2625)
02-18 23 : 17 : 01.815 E / art (31151) : android.support.v4.app.FragmentManagerImpl.executeOpsTogether (FragmentManager.java:2411)
02-18 23 : 17 : 01.816 E / art (31151) : android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute (FragmentManager.java:2366)
02-18 23 : 17 : 01.816 E / art (31151) : android.support.v4.app.FragmentManagerImpl.execPendingActions (FragmentManager.java:2273)
02-18 23 : 17 : 01.816 E / art (31151) : android.support.v4.app.FragmentManagerImpl $ 1.run (FragmentManager.java:733)
02-18 23 : 17 : 01.816 E / art (31151) : at android.os.Handler.handleCallback (Handler.java:815)
02-18 23 : 17 : 01.816 E / art (31151) : at android.os.Handler.dispatchMessage (Handler.java:104)
02-18 23 : 17 : 01.816 E / art (31151) : android.os.Looper.loop (Looper.java:207)
02-18 23 : 17 : 01.816 E / art (31151) : android.app.ActivityThread.main (ActivityThread.java:5845)์—์„œ

SDK๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ์ด ํŠน์ • SDK / ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค๋Š” ์—ฐ๊ฒฐํ•˜์ง€ ์•Š์•„๋„ ๋˜๋‚˜์š”? ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋ ๊นŒ์š”? ๋‚˜๋Š” ์ด๊ฒƒ์ด "Syncfusion.ListView.XForms"๋ฅผ ์—ฐ๊ฒฐํ•˜์ง€ ์•Š์•„์•ผํ•˜๋Š” ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค๋ผ๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
"Syncfusion.ListView.XForms.Control.Helpers"
"Syncfusion.ListView.XForms.Helpers"
"Syncfusion.SfPullToRefresh.XForms"
"Com.Syncfusion.Sfpulltorefresh"
"Syncfusion.SfPullToRefresh"
"Syncfusion.SfPullToRefresh.Android"
"Syncfusion.SfPullToRefresh.iOS"

ํŽธ์ง‘ํ•˜๋‹ค:
๋‚˜๋Š” ์ด๊ฒƒ์„ ๋” ์‚ดํŽด ๋ณด์•˜๊ณ  ๋ง์ปค์—๋Š” ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค๊ฐ€ ์•„๋‹Œ ์–ด์…ˆ๋ธ”๋ฆฌ ์ด๋ฆ„์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
"Syncfusion.SfListView.XForms.dll"
"Syncfusion.SfPullToRefresh.XForms.dll"
"Syncfusion.SfPullToRefresh.Android.dll"
"Syncfusion.SfPullToRefresh.iOS.dll"
์— ๋”ฐ๋ฅด๋ฉด
https://www.fuget.org/packages/Syncfusion.Xamarin.SfListView
https://www.fuget.org/packages/Syncfusion.Xamarin.SfPullToRefresh
https://www.fuget.org/packages/Syncfusion.Xamarin.SfPullToRefresh.Android
https://www.fuget.org/packages/Syncfusion.Xamarin.SfPullToRefresh.IOS

๋‹ค์‹œ ํŽธ์ง‘

๋น„์Šทํ•œ ๋ฌธ์ œ๊ฐ€ ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค (Xam.forms 3.4์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€๋งŒ ์ตœ์‹  3.5.0.129452 ์•ˆ์ •์—์„œ๋Š” ์ž‘๋™ํ•˜์ง€ ์•Š์Œ)
์ฒจ๋ถ€ ๋œ ์˜ค๋ฅ˜ ๋กœ๊ทธ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
xamform_runtime_error_Android.txt

@ AmrAlSayed0 Syncfusion์˜ ์–ด์…ˆ๋ธ”๋ฆฌ๋Š” SDK ์–ด์…ˆ๋ธ”๋ฆฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ SDK ์–ด์…ˆ๋ธ”๋ฆฌ + ๊ท€ํ•˜๊ฐ€ ์ œ๊ณต ํ•œ ๋ชฉ๋ก์„ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ์ด ํŠน๋ณ„ํ•œ ์ผ์„ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ๋งํฌํ•˜๋Š” ๊ฒฝ์šฐ์—๋„ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์Šคํƒ ์ถ”์ ์„ ๊ธฐ๋ฐ˜์œผ๋กœ SwipeRefreshLayout๊ณผ ๊ด€๋ จ๋œ Android ์ง€์› ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ผ๋ถ€ ๋ณ€๊ฒฝ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ Android์—์„œ ๊ฐ™์€ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. iOS๊ฐ€ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

3.5.0.169047๋กœ ์‹œ๋„ํ•ด์ฃผ์„ธ์š”. ์—ฌ์ „ํžˆ ๋ฐœ์ƒํ•ฉ๋‹ˆ๊นŒ? ๊ฐ์‚ฌ!

๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ์—ฌ์ „ํžˆ ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค. ์œ„์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ณต์ œํ•˜๊ณ  Xamarin ๋ฐ Syncfusion ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ํŒ€,
๋””๋ฒ„๊ทธ ๋ฐ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ๋„ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์˜ต์…˜์„ Don't Link ๊ณ„์† ์—ฐ๊ฒฐํ•˜๋ฉด xamarin ์–‘์‹ 3.5๋กœ ์ถฉ๋Œ์—†์ด ๋‚ด ์•ฑ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๋ฆด๋ฆฌ์Šค ๋ฐ ๋””๋ฒ„๊ทธ ๋ชจ๋“œ์—์„œ ์ถฉ๋Œ์—†์ด Xamarin.Forms 3.4๋กœ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋””๋ฒ„๊ทธ ๋ชจ๋“œ

์—ฌ์ „ํžˆ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ๊ฐ€ ์–ธ์ œ ์ˆ˜์ • ๋ ์ง€ ์˜ˆ์ƒํ•˜์‹ญ๋‹ˆ๊นŒ?

๋ง์ปค ๋ฌธ์ œ์ž…๋‹ˆ๊นŒ? ์ „์ฒด ์—ฐ๊ฒฐ์„ ํ™œ์„ฑํ™”ํ•˜๋Š” ๋””๋ฒ„๊ทธ ๋ชจ๋“œ์—์„œ ํ…Œ์ŠคํŠธํ–ˆ๋Š”๋ฐ ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์ง€๋งŒ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ์ „์ฒด ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ข€ ํ—ท๊ฐˆ๋ฆฌ๋„ค์š”

์ด์— ๋Œ€ํ•ด SyncFusion์— ๋ฌธ์˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์•„์ง ์ถฉ๋Œ ์›์ธ์„ ์ขํž ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฒ„์ „ 3.4์—์„œ 3.5๊นŒ์ง€ ScrollViewRenderer์˜ ๊ธฐ๋ณธ ํด๋ž˜์Šค๊ฐ€ ScrollView์—์„œ NestedScrollView๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ์œผ๋ฏ€๋กœ SF๋Š” ์–ด๋–ค ์ด์œ ๋กœ 3.5์—์„œ ์ž˜ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ํŒจ์น˜๋ฅผ ๋งŒ๋“ค์–ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค.

3.5๋ฅผ ๋‹ค์‹œ ์ปดํŒŒ์ผํ•˜๊ณ  ScrollViewRenderer ๊ธฐ๋ณธ ํด๋ž˜์Šค๋ฅผ ScrollView๋กœ ๋‹ค์‹œ ๋ณ€๊ฒฝํ–ˆ์œผ๋ฉฐ ์ด์ „ ๋ฒ„์ „์˜ SF๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ ํ–ˆ์œผ๋ฏ€๋กœ SF์˜ ์ตœ์‹  54 ๋ฆด๋ฆฌ์Šค์—๋Š” XF 3.5์—์„œ ์ž˜ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์€ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

@samhouts 3.5 ๋ฐ Syncfusion ๋ชฉ๋ก๋ณด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์— ๋Œ€ํ•œ ์ฐจ๋‹จ๊ธฐ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. Xam Forms ์—…๋ฐ์ดํŠธ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ์œ„ํ•œ ETA๋Š” ์–ผ๋งˆ์ž…๋‹ˆ๊นŒ?

์ด๊ฒƒ์ด Xamarin.Forms๊ฐ€ ์ˆ˜์ •ํ•ด์•ผ ํ•  ๋ฌธ์ œ์ธ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. SyncFusion์—์„œ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ๋ฌธ์ œ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@samhouts From Syncfusion์ด ๋ฌธ์ œ๋Š” ๋ง์ปค๊ฐ€ ํ™œ์„ฑํ™” ๋œ Xamarin.Forms ์—…๋ฐ์ดํŠธ ๋ฒ„์ „ 3.5 ์—…๋ฐ์ดํŠธ ์ดํ›„์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์•ž์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด Xamarin ํ”„๋ ˆ์ž„ ์›Œํฌ ์—…๋ฐ์ดํŠธ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๊ณ  ๋™์ผํ•œ ๋ฌธ์ œ ๋ณด๊ณ ์„œ (5288)๋ฅผ ๊ธฐ๋กํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์— ๊ณต์œ ํ–ˆ๋“ฏ์ด Linking ์˜ต์…˜์„ None์œผ๋กœ ์„ค์ •ํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€๊ธˆ์€ ์ด์ „ Xamarin.Forms (๋ฒ„์ „ 3.4 ์ดํ•˜) ์—…๋ฐ์ดํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ์ด ์ถฉ๋Œ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณด๊ณ  ๋œ ํ”„๋ ˆ์ž„ ์ž‘์—… ๋ฌธ์ œ์— ๋Œ€ํ•ด ํ›„์† ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜๋ฉด ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์–‘ํ•ด ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌ ๋“œ๋ฆฌ๋ฉฐ ๊ทธ๋•Œ๊นŒ์ง€ ์ด์ „ Xamarin.Forms ์—…๋ฐ์ดํŠธ (3.4 ์ดํ•˜)๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.


[email protected] ์ด ์—ฐ๋ฝ์ฒ˜์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‘ ์‚ฌ๋žŒ์ด ์—ฐ๊ฒฐ / ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ํ•  ์ˆ˜์—†๋Š” 15 ์ผ์งธ์ž…๋‹ˆ๋‹ค.

@caseyniemann ์šฐ๋ฆฌ๋Š”์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด SyncFusion๊ณผ ์—ฐ๋ฝ์„ ์ทจํ–ˆ์œผ๋ฉฐ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ•จ๊ป˜ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ

์•ˆ๋…•ํ•˜์„ธ์š” ํŒ€,
ํ˜„์žฌ ๋Œ€๋ถ€๋ถ„์˜ ๊ณ ๊ฐ์€ ์—†์Œ์œผ๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ์ด ์ถฉ๋Œ์— ๋Œ€ํ•œ ์˜๊ตฌ์  ์ธ ํ•ด๊ฒฐ์ฑ…์ด ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์—…๋ฐ์ดํŠธ ๋œ ๋ฒ„์ „์œผ๋กœ ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?
์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ์•Œ๋ฆผ์„๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ด€๋ จ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋ฌธ์•ˆ ์ธ์‚ฌ,
๊ทธ ๋‚˜๋‚˜ ํ”„๋ฆฌ ์•ผ N
(๋™๊ธฐํ™”)

@GnanaPriyaNamasivayam ์ง€๋‚œ ๋ชฉ์š”์ผ๊ณผ ์–ด์ œ Marissa Keller Outten๊ณผ Christian Grossmann์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. ๋ณดํ†ต ์ œ๊ฐ€ ์งˆ๋ฌธ์ด์žˆ์„ ๋•Œ๋งˆ๋‹ค ์—ฐ๋ฝ ํ•œ ์‚ฌ๋žŒ์ž…๋‹ˆ๋‹ค. ์ง€์›ํŒ€์— ์ด๋ฉ”์ผ ๋งŒ ๋ณด๋‚ด์•ผํ•ฉ๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ์ด๋Ÿฌํ•œ ์ผ์„ ์‹ ์†ํžˆ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋‚ด๋ถ€์ ์œผ๋กœ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด์•ผํ•˜๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

SF์— ๋Œ€ํ•ด ์ปดํŒŒ์ผํ•˜๊ณ  ๋””๋ฒ„๊น… ํ•  ์ˆ˜ ์žˆ๋„๋ก ์†Œ์Šค ๋ผ์ด์„ ์Šค๋กœ ๋‚ด SF ๋ผ์ด์„ ์Šค๋ฅผ ์„ค์ •ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? Microsoft dot com์˜ shneuvil์€ ํ˜„์žฌ ๋ผ์ด์„ ์Šค๊ฐ€ ์ ์šฉ๋˜๋Š” ์ด๋ฉ”์ผ ์ฃผ์†Œ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ํŒ€,
ํ˜„์žฌ ๋Œ€๋ถ€๋ถ„์˜ ๊ณ ๊ฐ์€ ์—†์Œ์œผ๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ ์ž‘์—…ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ์ด ์ถฉ๋Œ์— ๋Œ€ํ•œ ์˜๊ตฌ์  ์ธ ํ•ด๊ฒฐ์ฑ…์ด ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์—…๋ฐ์ดํŠธ ๋œ ๋ฒ„์ „์œผ๋กœ ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?
์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ์•Œ๋ฆผ์„๋ฐ›์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜๊ณ  ๊ด€๋ จ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋ฌธ์•ˆ ์ธ์‚ฌ,
๊ทธ ๋‚˜๋‚˜ ํ”„๋ฆฌ ์•ผ N
(๋™๊ธฐํ™”)

@samhouts @GnanaPriyaNamasivayam ์—ฐ๊ฒฐํ•˜๊ณ  ํ•ด๊ฒฐ ํ•œ ๋‹ค์Œ @ ๊ธฐํ˜ธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‘˜ ๋‹ค์ด ๋‚ด์šฉ์„ ๋ณผ ์ˆ˜ ์žˆ๋„๋กํ•˜์‹ญ์‹œ์˜ค.

@samhouts , ํ™•์ธํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‹ค๊ฐ€์˜ค๋Š” Xamarin ์—…๋ฐ์ดํŠธ์—์„œ์ด ๋ง์ปค ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ฆ‰๊ฐ์ ์ธ ์ˆ˜์ •์„ ์ œ๊ณต ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์ด๋ฅผ ์ตœ์šฐ์„  ์ˆœ์œ„๋กœ ํ‘œ์‹œํ–ˆ์œผ๋ฉฐ SyncFusion๊ณผ Xamarin ์—”์ง€๋‹ˆ์–ด๊ฐ„์— ํ†ต์‹ ์ด ์ด๋ฃจ์–ด์กŒ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ.

@samhouts @GnanaPriyaNamasivayam ์ด 3.6 Xamarin ์—…๋ฐ์ดํŠธ์—์„œ ํ•ด๊ฒฐ ๋œ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@caseyniemann ํ˜„์žฌ๊นŒ์ง€๋„ SyncFusion ๋ฐ XF 3.6์˜ ์ตœ์‹  ๋ฒ„์ „์—์„œ ์—ฌ์ „ํžˆ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด SyncFusion์ด 3.6์— ๋Œ€ํ•ด ๋‹ค์‹œ ๋นŒ๋“œํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ @GnanaPriyaNamasivayam ๋˜๋Š” @ Nijamudeen-Mohamed๊ฐ€ ์ด๊ฒƒ์„ ์‹œ๋„ํ•˜๊ณ  ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด @PureWeen ์ด ์›”์š”์ผ์— SyncFusion๊ณผ ์ง์ ‘ ๋…ผ์˜ ํ•  ์˜ˆ์ •์ด๋ฉฐ ๊ทธ๋•Œ ์—…๋ฐ์ดํŠธ๊ฐ€์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์–‘ํ•ด ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

XF 3.6์—์„œ๋Š” FFImage์—์„œ ์ปดํŒŒ์ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฏ€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@xperseguers ๋„ค, ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. https://github.com/luberda-molinet/FFImageLoading/issues/1154#issuecomment -470589841

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ง„ํ–‰ ๋˜๋Š” ETA๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

@samhouts @GnanaPriyaNamasivayam ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. 23 ์ผ

24์™€ XF 3.6์ด ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค. Syncfusion์ด ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ• ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

Android ํŒ€์˜ ๋ฌธ์ œ๋ฅผ ์ขํžˆ๊ณ  ํ˜„์žฌ SF๋ฅผ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ์™„ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์—ฐ๊ตฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์†”๋ฃจ์…˜์ด ์›€์ง์ด๋ฉด ์—…๋ฐ์ดํŠธ๋ฅผ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@samhouts @GnanaPriyaNamasivayam 3.6 ๋ฐ ์ตœ์‹  Synfusion์ด ์ž‘๋™ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” ... ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Syncfusion์—์„œ :๋ณด๊ณ  ๋œ ๋ฌธ์ œ๋Š” Xamarin v3.6์—๋„ ์กด์žฌํ•˜์ง€๋งŒ ์—ฌ์ „ํžˆ์ด ๋ฌธ์ œ๋Š” Xamarin ํŒ€ Xamarin ํŒ€์—์„œ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ๊ฐ€ ๊ณง ํ•ด๊ฒฐ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‚ด Android ์•ฑ์€ ์ด์ œ Play ์Šคํ† ์–ด์—์„œ 100MB๊ฐ€ ๋„˜์Šต๋‹ˆ๋‹ค. ๋ง์ปค๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ›จ์”ฌ ๋” ํฝ๋‹ˆ๋‹ค.

์†Œ์‹œ์ง€ ๋งŒ๋“ค๊ธฐ๋ฅผ ๋ณด๋ ค๋ฉด https://github.com/xamarin/Xamarin.Forms/projects/32 ์—์„œ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์ถ”์  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŠน์ • ์ˆ˜์ • ์‚ฌํ•ญ์€ 3/29์— ์™„๋ฃŒ ๋  ์˜ˆ์ •์ธ Sprint 150์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ์‹ค์ œ ํ”„๋กœ๋•์…˜ ์ค€๋น„ ์ˆ˜์ •์ด ๊ทธ๋•Œ๊นŒ์ง€ ํ‘ธ์‹œ ๋ ์ง€ ์•Œ ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

์†Œ์‹œ์ง€ ๋งŒ๋“ค๊ธฐ๋ฅผ ๋ณด๋ ค๋ฉด https://github.com/xamarin/Xamarin.Forms/projects/32 ์—์„œ ์ง„ํ–‰ ์ƒํ™ฉ์„ ์ถ”์  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํŠน์ • ์ˆ˜์ • ์‚ฌํ•ญ์€ 3/29์— ์™„๋ฃŒ ๋  ์˜ˆ์ •์ธ Sprint 150์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ์‹ค์ œ ํ”„๋กœ๋•์…˜ ์ค€๋น„ ์ˆ˜์ •์ด ๊ทธ๋•Œ๊นŒ์ง€ ํ‘ธ์‹œ ๋ ์ง€ ์•Œ ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

URL ์ˆ˜์ • : https://github.com/xamarin/Xamarin.Forms/projects/32

์ด ํŠน์ • ์ˆ˜์ • ์‚ฌํ•ญ์€ 3/29์— ์™„๋ฃŒ ๋  ์˜ˆ์ •์ธ Sprint 150์˜ ์ผ๋ถ€์ž…๋‹ˆ๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„ ์‹ค์ œ ํ”„๋กœ๋•์…˜ ์ค€๋น„ ์ˆ˜์ •์ด ๊ทธ๋•Œ๊นŒ์ง€ ํ‘ธ์‹œ ๋ ์ง€ ์•Œ ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์‹ฌ๊ฐํ•œ ํšŒ๊ท€์ž…๋‹ˆ๋‹ค. ์ฆ‰์‹œ ์ˆ˜์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š”์ด ํšŒ๊ท€๋ฅผ ๋‹ด๋‹นํ•˜๋Š” XF3.5์—์„œ ์ปค๋ฐ‹์„ ์‹๋ณ„ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ ๋๋‚ฌ์Šต๋‹ˆ๊นŒ?

์—ฌ์ „ํžˆ ์–‘์ˆ˜์ธ์ด ์—†์Šต๋‹ˆ๋‹ค ... ๋ฌด์Šจ ์ผ ์ด์ฃ ?

์ด ์‹œ์ ์—์„œ ์šฐ๋ฆฌ๋Š” ์–‘์ธก์˜ ์„๋ฐฉ์„ ํฌํ•จ ํ•  ๊ณ„ํš์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์ ์„ ์ฐ๊ณ  ๋ชจ๋“  ๊ฒƒ์„ ํ†ต๊ณผํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ถ”๊ฐ€ ํ…Œ์ŠคํŠธ๊ฐ€ ์—ฌ์ „ํžˆ ์žˆ์Šต๋‹ˆ๋‹ค.

  • Syncfusion์€ 3.1, 3.2, 3.3, 3.6์—์„œ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ ํ•  ๋ฆด๋ฆฌ์Šค๋ฅผ ์ถœ์‹œ ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.
  • 3.4 ๋ฐ 3.5์— ๋Œ€ํ•œ ํ•ซํ”ฝ์Šค๋ฅผ ์ž‘์—… ์ค‘์ด๋ฉฐ ํ•ด๋‹น ๋ฒ„์ „์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

@PureWeen @GnanaPriyaNamasivayam ์ด๋Ÿฌํ•œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ผ์ •์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@PureWeen @GnanaPriyaNamasivayam ์ด๋Ÿฌํ•œ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ผ์ •์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@Giorgi -Xamarin ํŒ€์€์ด ์ˆ˜์ •์ด ํ˜„์žฌ ์Šคํ”„๋ฆฐํŠธ ๋‚ด์—์„œ ์ˆ˜ํ–‰ ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ด๋ฏธ ์•ฝ์†ํ–ˆ์œผ๋ฉฐ 2019 ๋…„ 3 ์›” 29 ์ผ์— ํƒ€์ž„ ๋ผ์ธ์„ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.
https://github.com/xamarin/Xamarin.Forms/issues/5288#issuecomment -473300702

๊ทธ๋“ค์˜ ํฌ๋Ÿผ ์Šค๋ ˆ๋“œ์—์„œ Syncfusion์€ ์—ฌ์ „ํžˆ โ€‹โ€‹Xamarin์ด๋ผ๊ณ  ๋งํ•˜๊ณ  ์žˆ์ง€๋งŒ 3.6์„ ์ง€์›ํ•˜๊ธฐ์œ„ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋ฆด๋ฆฌ์Šค ๊ฒฌ์ ์ด์—†๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
https://www.syncfusion.com/forums/142489/compatibility-with-xamarin-forms-3-5

@PureWeen ์ด ๊ทธ์˜ ์˜๊ฒฌ์—์„œ ๋งํ–ˆ๋“ฏ์ด ์ด๊ฒƒ์€ SyncFusion๊ณผ ํ•จ๊ป˜ ์กฐ์ • ๋œ ๋ฆด๋ฆฌ์Šค์ž…๋‹ˆ๋‹ค. Xamarin์€ 3.4 ๋ฐ 3.5์— ๋Œ€ํ•œ ํ˜ธํ™˜์„ฑ์„ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ์„œ๋น„์Šค ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ฆด๋ฆฌ์Šคํ•ฉ๋‹ˆ๋‹ค. SyncFusion์€ 3.5 ๋ฐ 3.6๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์ˆ˜์ •ํ•˜๋Š” ์ƒˆ ๋ฒ„์ „์„ ์ถœ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ์ฃผ์— ๋‘ Xamarin ๋ฆด๋ฆฌ์Šค๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. SyncFusion์˜ ์ถœ์‹œ ์ผ์ •์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ ์ด๊ฒƒ์ด ๊ทธ๋“ค์—๊ฒŒ๋„ ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋†’๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณ ๊ฐ์—๊ฒŒ ๊ฐ€์žฅ ์ ํ•ฉํ•œ ํ–‰๋™ ๋ฐฉ์นจ์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“œ๋Š” ๋งŽ์€ ๋ณ€์ˆ˜๊ฐ€์ด ๋ฌธ์ œ์— ํฌํ•จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š” ๊ณง ํ•ด๊ฒฐ ๋  ์˜ˆ์ •์ด๋ฉฐ, ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๊ฐ€ ๋‹ค์‹œ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์–‘ํ•ด ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

๋ฌด์‹œ ๋ชฉ๋ก์— ๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์—ฐ๊ฒฐํ•˜๋Š” ๋™์•ˆ ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ๋ฌด์‹œํ•˜๋ ค๊ณ ํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
Syncfusion.SfListView.XForms
๋‘ ๊ฐ€์ง€ ์งˆ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • Link SDK assemblies only ์„ ํƒํ•˜๋ฉด ํƒ€์‚ฌ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ธ Syncfusion์˜ ์–ด์…ˆ๋ธ”๋ฆฌ๊ฐ€ ๋งํฌ๋˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  • ๋„ค์ž„ ์ŠคํŽ˜์ด์Šค ์•„๋ž˜์˜ ๋ชจ๋“  ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@ ali-h2010 sflistview์™€ ๊ฐ™์€ syncfusion ๋„๊ตฌ๋Š” xamarin ์–‘์‹ ๋ชฉ๋ก๋ณด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋ชฉ๋ก๋ณด๊ธฐ ์ธ ๊ฒƒ์ฒ˜๋Ÿผ ๊ฐ€์žฅํ•˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ๊ฐ€์ƒํ™”์™€ ํ•จ๊ป˜ ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ xamarin์€ datagrid์—์„œ ๋ช‡ ๊ฐ€์ง€ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ–ˆ์œผ๋ฉฐ Syncfusion์˜ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์ง€์ • ๋„๊ตฌ๋ฅผ ๊ฐ€์ •ํ•˜๊ณ  ์ค‘๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค. Syncfusion์€ ์‹ค์ œ๋กœ ๋„๊ตฌ์™€ ๊ด€๋ จํ•˜์—ฌ xamarin๋ณด๋‹ค ํ›จ์”ฌ ์•ž์„œ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋Œ์–ด์„œ ๋†“๊ธฐ ๊ธฐ๋Šฅ์ด xamarin ๋„๊ตฌ์— ์•„์ง ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉฐ ์•ฑ์—์„œ sflistview ๋˜๋Š” sfdatagrid์˜ ์ข…์†์„ฑ์„ ์ œ๊ฑฐํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

ํ•œ ๋‹ฌ ๋™์•ˆ ๋‚˜๋Š”์ด ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.
๋‚˜๋Š” ๊ณง ์ถœ์‹œ ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ์‚ฌ์—๊ฒŒ ๋งํ•˜๊ณ  ์žˆ์—ˆ๋‹ค.

๋‘ ํ”Œ๋žซํผ ๋ชจ๋‘์—์„œ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ๋กœ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š๊ณ  XF 3.5๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ์‹ค์ˆ˜๋ฅผ ์ €์งˆ๋ €์Šต๋‹ˆ๋‹ค. ๋‚ด ๋‚˜์˜๊ณ  ๋ถ€๋„๋Ÿฌ์›Œ. ๊ทธ ์ดํ›„๋กœ XF 3.5 (๋Œ€๋ถ€๋ถ„ bindableLayout)์— ์˜์กดํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค๋ฅผ ๋งŒ๋“ค์–ด์•ผํ•˜๊ณ  SfListView๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋Œ€์‹  Telerik์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ €๋ ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ ์ฃผ๊ฐ€ ๋๋‚˜๊ธฐ ์ „์— ์ˆ˜์ • ํ•ด์ฃผ์‹œ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ž˜ ์ž‘๋™ํ•˜๋Š” Telerik์˜ ListView๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (SfListView๋ฅผ ์„ ํ˜ธํ•˜๋”๋ผ๋„).

์—†์Œ์œผ๋กœ ์„ค์ •๋œ ๋งํฌ ์–ด์…ˆ๋ธ”๋ฆฌ๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ–‰์šด์„ ๋น•๋‹ˆ๋‹ค!

๋‚˜๋„ ์‹ค์ œ๋กœ SF List๋ฅผ XF 4 CollectionView๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœํ•˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ๊ตฌํ˜„์œผ๋กœ ๋Œ€์ฒด ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์‹œ๊ฐ„์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๊ทธ๋“ค์ด ์˜ค๋Š˜ ์•„์นจ์— ํ•œ ๋ฆด๋ฆฌ์Šค์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์„ ์žŠ์—ˆ์Šต๋‹ˆ๊นŒ? ์ ์–ด๋„ ํ˜„์žฌ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค ์ธ XF 3.6์—์„œ๋Š”.

ํ•œ ๋‹ฌ ๋™์•ˆ ๋‚˜๋Š”์ด ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.
๋‚˜๋Š” ๊ณง ์ถœ์‹œ ๋  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ์‚ฌ์—๊ฒŒ ๋งํ•˜๊ณ  ์žˆ์—ˆ๋‹ค.

๋‘ ํ”Œ๋žซํผ ๋ชจ๋‘์—์„œ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ๋กœ ํ…Œ์ŠคํŠธํ•˜์ง€ ์•Š๊ณ  XF 3.5๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ์‹ค์ˆ˜๋ฅผ ์ €์งˆ๋ €์Šต๋‹ˆ๋‹ค. ๋‚ด ๋‚˜์˜๊ณ  ๋ถ€๋„๋Ÿฌ์›Œ. ๊ทธ ์ดํ›„๋กœ XF 3.5 (๋Œ€๋ถ€๋ถ„ bindableLayout)์— ์˜์กดํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค๋ฅผ ๋งŒ๋“ค์–ด์•ผํ•˜๊ณ  SfListView๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋Œ€์‹  Telerik์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ์ €๋ ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ ์ฃผ๊ฐ€ ๋๋‚˜๊ธฐ ์ „์— ์ˆ˜์ • ํ•ด์ฃผ์‹œ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ž˜ ์ž‘๋™ํ•˜๋Š” Telerik์˜ ListView๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค (SfListView๋ฅผ ์„ ํ˜ธํ•˜๋”๋ผ๋„).

์—†์Œ์œผ๋กœ ์„ค์ •๋œ ๋งํฌ ์–ด์…ˆ๋ธ”๋ฆฌ๋„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ–‰์šด์„ ๋น•๋‹ˆ๋‹ค!

XF 3.5 ์•ฑ ๋ฐ SF .53์ด ์„ค์น˜๋œ ๋‚ด Android๊ฐ€ ์ž‘๋™ํ•˜๋ฉฐ Play ์Šคํ† ์–ด์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์„ค์ • ์‚ฌ์šฉ :
2019-03-29 16_49_23-Window

์ด๊ฒƒ์€ ๊ทธ๋“ค์ด ์˜ค๋Š˜ ์•„์นจ์— ํ•œ ๋ฆด๋ฆฌ์Šค์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋Š” ๊ฒƒ์„ ์žŠ์—ˆ์Šต๋‹ˆ๊นŒ? ์ ์–ด๋„ ํ˜„์žฌ ์•ˆ์ •์ ์ธ ๋ฆด๋ฆฌ์Šค ์ธ XF 3.6์—์„œ๋Š”.

๊ทธ๋ž˜์„œ ๊ทธ๋“ค์€ ์ด๋ฏธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ด๋Š” ์ฃผ์š” ๋ฒ„์ „ ์—…๋ฐ์ดํŠธ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—…๋ฐ์ดํŠธ์— ๋Œ€ํ•ด ์•Œ๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์ œ๋Š” ์™œ ๋ฉ”์ด์ € ๋ฒ„์ „์ด ๋ฆด๋ฆฌ์Šค๋˜์—ˆ์ง€๋งŒ ๊ฐ„๋‹จํ•œ ํ•ซํ”ฝ์Šค ์—ฌ์•ผํ•˜๋Š”์ง€์ž…๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์˜์‚ฌ ์†Œํ†ต์€ ์ •๋ง ์žฌ์•™์ด์—ˆ์Šต๋‹ˆ๋‹ค ...
๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ์ƒˆ๋กœ์šด ํšŒ๊ท€์—†์ด ์ž‘๋™ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ์ด๋ฒˆ์—๋Š” SF๋กœ ๋๋‚ฌ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋กœ ์ธํ•ด ๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ตœ์„ ์„ ๋‹คํ•˜๊ณ  ์žˆ์œผ๋ฉฐ SyncFusion ๋ฐ Telerik๊ณผ ๊ฐ™์€ ํƒ€์‚ฌ ์ปจํŠธ๋กค์ด ํšŒ๊ท€ํ•˜์ง€ ์•Š๋„๋ก ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ๋“ค์„ ์†Œ์ค‘ํžˆ ์—ฌ๊ธฐ๋ฉฐ ์šฐ๋ฆฌ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์†Œ์ค‘ํžˆ ์—ฌ๊น๋‹ˆ๋‹ค!

2019-03-26 ์— 3.4.0.1039999 ๋ฐ 3.5.0.274416 ์„ ์ถœ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. SyncFusion์€ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ํ…Œ์ŠคํŠธ ํ•  ๋•Œ ์ด๋Ÿฌํ•œ ๋ฒ„์ „์ด ๋” ์ด์ƒ ์ถฉ๋Œํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ์ง€๋งŒ SyncFusion ๋ฒ„์ „ ๋ฒˆํ˜ธ๊ฐ€ ์ •ํ™•ํžˆ ๋ฌด์—‡์ธ์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

Xamarin.Forms 3.6 ๋˜๋Š” ์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ๋ฒ„์ „์—์„œ์ด ๋ฌธ์ œ๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ ๋ฌธ์ œ์— ๋Œ€ํ•ด SyncFusion (https://www.syncfusion.com/forums/142489/compatibility-with)์— ๋ฌธ์˜ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. -xamarin-forms-3-5), ๊ทธ๋“ค์ด ๋” ์ด์ƒ์ด ๋ฌธ์ œ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์‹คํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. SyncFusion์ด ๊ณ ๊ฐ์„ ์œ„ํ•ด์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜๋ฉฐ, Xamarin.Forms์—์„œํ•ด์•ผ ํ•  ๋‹ค๋ฅธ ์ผ์ด ์žˆ์œผ๋ฉด ์šฐ์„  ์ˆœ์œ„๋ฅผ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์ข‹์•„, ์˜ค๋Š˜ ์•„์นจ, ๋‚˜๋Š” 3 ์›” 26 ์ผ์˜ ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ–ˆ๋‹ค.
๋” ์ด์ƒ ํฐ์ƒ‰ ํ™”๋ฉด์ด ํ‘œ์‹œ๋˜์ง€ ์•Š์Œ์„ ํ™•์ธํ•˜๊ฒŒ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌ !!
IMHO๊ฐ€ SfListView๊ฐ€ ๋” ๋‚ซ๊ธฐ ๋•Œ๋ฌธ์— Telerik ListView๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋ง์ปค ๋ชจ๋“œ์—์„œ Link SDK assemblies only ๋กœ ์‹œ๋„ํ–ˆ์ง€๋งŒ Xamarin.forms 3.6.0.264807 ๋ฐ Syncfusion 17.1.0.38 https://help.syncfusion.com/xamarin/release-notes/v17.1.0.38์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ. ๋‚˜๋Š” ์—ฌ์ „ํžˆ ์ถฉ๋Œ๊ณผ ์„ฑ๊ฐ€์‹  ๋ผ์ด์„ผ์Šค ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค SF, ๋‹น์‹ ์€ ์šฐ๋ฆฌ์—๊ฒŒ ๋ฌด๋ฃŒ๋กœ ์ฃผ์—ˆ์ง€๋งŒ ์šฐ๋ฆฌ ์–ผ๊ตด์— ๋ฌธ์ง€๋ฅด์ง€ ์•Š์•„๋„๋ฉ๋‹ˆ๋‹ค.

@samhouts @PureWeen ์€ Xamarin.forms 3.6.0.264807 ๋ฐ Syncfusion 17.1.0.38์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ๋ถ€ํ„ฐ Xamarin๊ณผ Syncfusion ๊ฐ„์˜ ํ†ต์‹ ์ด ๋Š์–ด์กŒ๊ณ  ํ•œ ๋‹ฌ ๋ฐ˜ ์ด์ƒ ๋Š์–ด์กŒ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜ ์—ฐ๊ฒฐํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์„ธ์š”.

์ €๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” XF 3.6.0.264807 ๋ฐ SF 17.1.0.38์—์„œ ์—ฌ์ „ํžˆ ์—ฌ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฌธ์ œ๊ฐ€ XF ๋˜๋Š” SF์— ์žˆ๋Š”์ง€๋Š” ์•„์ง ๋ช…ํ™•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
@samhouts @PureWeen ๊ธด๊ธ‰ํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๊ณ  ์ˆ˜์ • ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

SyncFusion์— ์—ฐ๋ฝํ•˜์—ฌ ์ˆ˜์ •์ด ์˜ˆ์ƒ๋˜๋Š” ๋ฒ„์ „์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€ ํ•ด๋‹น ์ •๋ณด์™€ ํ•จ๊ป˜ ์—ฌ๊ธฐ๋กœ ๋‹ค์‹œ๋ณด๊ณ  ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์–‘ํ•ด ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์™€์šฐ ์—…๋ฐ์ดํŠธํ•˜๋ ค๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์•Œ๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ์—์„œ ํ˜ธํ™˜์„ฑ ๋ฌธ์ œ๋ฅผ ์–ธ๊ธ‰ํ•˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ 3.5 ๋ฌธ์ œ๋ฅผ ์–ธ๊ธ‰ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค https://help.syncfusion.com/xamarin/release-notes/ v17.1.0.38? type = all
๊ทธ๋ž˜์„œ Xamarin์€ 3.5๋ฅผ ์ˆ˜์ •ํ–ˆ์ง€๋งŒ 3.6 ์ด์ƒ์€ ์•ž์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด SF ์ธก์—์„œ ์ˆ˜์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋„ ์‹ค์ œ๋กœ SF List๋ฅผ XF 4 CollectionView๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœํ•˜๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ๊ตฌํ˜„์œผ๋กœ ๋Œ€์ฒด ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์‹œ๊ฐ„์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ, CollectionView๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ sflistview ๋˜๋Š” sfdatagrid์˜ ๋ชจ๋“  ๊ฒƒ์„ ์ƒ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ๊ฐ€์ƒํ™”๋ฅผ ์ˆ˜ํ–‰ํ•˜๋”๋ผ๋„ ๋ฐ”์ธ๋”ฉ ๊ฐ€๋Šฅํ•œ ์Šคํƒ ๋ ˆ์ด์•„์›ƒ ๋˜๋Š” ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๋“œ๋กœ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‹น์‹ ์ด ๋‚˜์—๊ฒŒ ์—„์ง€ ์†๊ฐ€๋ฝ์„ ๋‚ด๋ ธ์ง€ ๋งŒ ๋‚˜๋Š” ์ง„์‹ค์„ ๋งํ•˜๊ณ  ์žˆ์ง€๋งŒ syncfusion ์ดํ•˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค. xamarin์˜ ListView๋ฅผ ์ƒ์†์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. sflistview์— ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ ๊ธฐ๋Šฅ ๋งŒ ์žˆ์œผ๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค.

Man I believe you, just thumbed because then is hard to remove dependency :) ์ด๊ฒƒ์€ ์šฐ๋ฆฌ ๋ชจ๋‘๊ฐ€ ๋งˆ์ฃผ ์น˜๋Š” ์ถ”์•…ํ•œ ์ผ์ž…๋‹ˆ๋‹ค

๋ถˆํŽธ์„ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

Sflistview์—์„œ Android ๋ง์ปค ๋ฌธ์ œ๋ฅผ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ๋‹ค์–‘ํ•œ ๊ฐ€๋Šฅํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ํ™•์ธํ•˜๊ณ  ๋ชฉ๋ก๋ณด๊ธฐ ๊ธฐ๋Šฅ ํ…Œ์ŠคํŠธ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๋Š” ์ƒํƒœ ์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ…Œ์ŠคํŠธ๋ฅผ ์™„๋ฃŒํ•˜๊ณ  ๋‹ค๊ฐ€์˜ค๋Š” ์ฃผ๊ฐ„ ๋„ˆ๊ฒŸ์—์„œ ํŒจ์น˜๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. 2019 ๋…„ 4 ์›” 9 ์ผ์— ์˜ˆ์ƒ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

ํ—‰ํ—‰
์ด ์†”๋ฃจ์…˜์—๋Š” ๋Œ์–ด์„œ ๋†“๊ธฐ ๋ฐ ๊ณ ๊ธ‰ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค.
https://github.com/roubachof/Sharpnado.Presentation.Forms

๋ฌธ์ œ๋Š” ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ์ถฉ๋Œ ํ•  ๊ฒƒ์ธ๊ฐ€์ž…๋‹ˆ๋‹ค.
๋˜ํ•œ Syncfusion์˜ ๋ชฉ๋ก๋ณด๊ธฐ์— ๋งŽ์€ ํˆฌ์ž๋ฅผํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

์ด์ „ ๋…ผ์˜์— ๋”ฐ๋ผ 2019 ๋…„ 4 ์›” 9 ์ผ ์˜ˆ์ •๋œ ์ฃผ๊ฐ„ Nuget์— ์ถ”๊ฐ€ ์ง€์—ฐ์—†์ด ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž„์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•œํŽธ, ์ฃผ๊ฐ„ Nuget ๋ฆด๋ฆฌ์Šค ์ „์— SfListView Custom Nugets / Assemblies๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋‹ค์Œ ๋งํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์› ํ‹ฐ์ผ“์„ ์ƒ์„ฑํ•˜์‹ญ์‹œ์˜ค.
์ง€์› ์ƒ์„ฑ : https://www.syncfusion.com/support/directtrac/incidents

๋ฌธ์•ˆ ์ธ์‚ฌ,
๊ทธ ๋‚˜๋‚˜ ํ”„๋ฆฌ ์•ผ N
(Syncfusion ํŒ€)

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์ตœ์‹  ์ฃผ๊ฐ„ NuGet ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ ๋ฒ„์ „ 17.1.0.40์ด "SfListView ๋ฐ Xamarin Forms 3.5 ์ด์ƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ๊ธฐ๋ณธ ์ถฉ๋Œ"์ด๋ผ๋Š”๋ณด๊ณ  ๋œ ๋ฌธ์ œ์™€ ํ•จ๊ป˜ ๋กค์•„์›ƒ๋˜์—ˆ์œผ๋ฉฐ ๋‹ค์šด๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ์Œ์„ ๋ฐœํ‘œํ•˜๊ฒŒ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค (

๊ท€ํ•˜์˜ ์ง€์›์— ๊ฐ์‚ฌ ๋“œ๋ฆฌ๋ฉฐ์ด ์—…๋ฐ์ดํŠธ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๊ทธ ๋‚˜๋‚˜ ํ”„๋ฆฌ ์•ผ N
(Syncfusion ํŒ€)

์•ˆ๋…•ํ•˜์„ธ์š”.

๋ฐฉ๊ธˆ SF ๋„ˆ๊ฒŸ์„ ์ตœ์‹  (17.1.0.40)์œผ๋กœ ์—…๋ฐ์ดํŠธํ–ˆ์œผ๋ฉฐ Android์—์„œ SfListView ๊ฐ€์žˆ๋Š” ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ๋•Œ ์˜ˆ์™ธ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

04-10 15 : 10 : 04.141 I / MonoDroid (20065) : ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์˜ˆ์™ธ :
04-10 15 : 10 : 04.157 I / MonoDroid (20065) : System.TypeLoadException : ๋ถ€๋ชจ ํด๋ž˜์Šค vtable์„ ์ดˆ๊ธฐํ™”ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์›์ธ : Syncfusion.ListView.XForms.Android.Renderer.ScrollViewRenderer ์‹คํŒจ ์–ด์…ˆ๋ธ”๋ฆฌ : / storage / ์œ ํ˜•์˜ VTable ์„ค์ • emulated / 0 / Android / data / Grouping.Droid / files /.__ override __ / Syncfusion.SfListView.XForms.Android.dll ์œ ํ˜• : ScrollViewRenderer ๋ฉค๋ฒ„ : (null)
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : at (๋ž˜ํผ ๊ด€๋ฆฌ-๋„ค์ดํ‹ฐ๋ธŒ) System.RuntimeType.GetConstructors_native (System.RuntimeType, System.Reflection.BindingFlags)
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : System.RuntimeType.GetConstructors_internal (System.Reflection.BindingFlags bindingAttr, System.RuntimeType reflectType) [0x00008] in <58604b4522f748968296166e317b04b4> : 0
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : System.RuntimeType.GetConstructorCandidates (System.String ์ด๋ฆ„, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type [] ์œ ํ˜•, System. <58604b4522f748968296166e317b04b4> : 0์˜ ๋ถ€์šธ allowPrefixLookup) [0x00034]
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : <58604b4522f748968296166e317b04b4> : 0์˜ System.RuntimeType.GetConstructors (System.Reflection.BindingFlags bindingAttr) [0x00000]์—์„œ
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : System.RuntimeType.CreateInstanceImpl (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] args, System.Globalization.CultureInfo ๋ฌธํ™”๊ถŒ, System.Object [] activationAttributes, System.Threading.StackCrawlMark & โ€‹โ€‹stackMark) [0x0022b] in <58604b4522f748968296166e317b04b4> : 0
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : System.Activator.CreateInstance (System.Type ์œ ํ˜•, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] args, System. Globalization.CultureInfo culture, System.Object [] activationAttributes) [0x000a1] in <58604b4522f748968296166e317b04b4> : 0
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : <58604b4522f748968296166e317b04b4> : 0์˜ System.Activator.CreateInstance (System.Type ์œ ํ˜•, System.Object [] args) [0x00000]์—์„œ
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Internals.DependencyResolver.ResolveOrCreate (System.Type type, System.Object [] args) [0x00046] D : a1sXamarin.Forms.CoreDependencyResolver. cs : 49
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Internals.Registrar 1[TRegistrable].GetHandler (System.Type type, Xamarin.Forms.IVisual visual, System.Object[] args) [0x00051] in D:\a\1\s\Xamarin.Forms.Core\Registrar.cs:70 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Internals.Registrar 1 [TRegistrable] .GetHandlerForObject [TOut] (System.Object obj, System.Object [] args ) D : a1sXamarin.Forms.CoreRegistrar.cs : 102์˜ [0x0002c]
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00000] D : a1sXamarin. Forms.Platform.AndroidPlatform.cs : 336
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement ๋ทฐ, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms. Platform.Android.RendererPool ํ’€, System.Boolean sameChildren) [0x000af] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 120
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D : a1sXamarin. Forms.Platform.AndroidVisualElementPackager.cs : 268
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 92์˜ Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000]์—์„œ
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [0x00007] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:414 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetElement (TElement ์š”์†Œ) [0x000e0] in D : a1sXamarin.Forms .Platform.AndroidVisualElementRenderer.cs : 231
์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์˜ˆ์™ธ :

System.TypeLoadException :

04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00027] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:127 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement element, Android.Content.Context context) [0x0001f] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:338 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement view, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms.Platform.Android.RendererPool pool, System.Boolean sameChildren) [0x000af] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:120 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:268 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:92 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [ 0x00007] D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer.cs : 414
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetElement (TElement element) [0x000e0] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:231 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin. D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer.cs : 127์˜ Forms.VisualElement ์š”์†Œ) [0x00027]
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x0001f] in D : a1sXamarin. Forms.Platform.AndroidPlatform.cs : 338
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement ๋ทฐ, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms. Platform.Android.RendererPool ํ’€, System.Boolean sameChildren) [0x000af] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 120
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D : a1sXamarin. Forms.Platform.AndroidVisualElementPackager.cs : 268
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 92์˜ Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000]์—์„œ
04-10 15 : 10 : 04.158 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [0x00007] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:414 04-10 15:10:04.158 I/MonoDroid(20065): at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetElement (TElement ์š”์†Œ) [0x000e0] in D : a1sXamarin.Forms .Platform.AndroidVisualElementRenderer.cs : 231
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.VisualElementRenderer`1 [TElement] .Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement ์š”์†Œ) [0x00027] D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer.cs : 127
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x0001f]์˜ D : a1sXamarin. Forms.Platform.AndroidPlatform.cs : 338
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.AppCompat.Platform.AddChild (Xamarin.Forms.Page ํŽ˜์ด์ง€, System.Boolean ๋ ˆ์ด์•„์›ƒ) [0x0000d] in D : a1sXamarin. Forms.Platform.AndroidAppCompatPlatform.cs : 350
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.AppCompat.Platform.SetPageInternal (Xamarin.Forms.Page newRoot) [0x000ac] D : a1sXamarin.Forms.Platform.AndroidAppCompatPlatform .cs : 320
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.AppCompat.Platform.SetPage (Xamarin.Forms.Page newRoot) [0x00087] D : a1sXamarin.Forms.Platform.AndroidAppCompatPlatform .cs : 275
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.FormsAppCompatActivity.InternalSetPage (Xamarin.Forms.Page ํŽ˜์ด์ง€) [0x00039] D : a1sXamarin.Forms.Platform.AndroidAppCompatFormsAppCompatActivity.cs : 333
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.FormsAppCompatActivity.SetMainPage () [0x00000] in D : a1sXamarin.Forms.Platform.AndroidAppCompatFormsAppCompatActivity.cs : 362
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Xamarin.Forms.Platform.Android.FormsAppCompatActivity.LoadApplication (Xamarin.Forms.Application ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜) [0x00282] D : a1sXamarin.Forms.Platform.AndroidAppCompatFormsAppCompatActivity.cs : 138
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Grouping.Droid.MainActivity.OnCreate (Android.OS.Bundle ๋ฒˆ๋“ค) [0x00027] C : UsersmikolajProgrammingReproSfListViewGroupingGroupingGrouping.DroidMainActivity.cs : 23
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState) [0x00011] in <2960acf2eeb24d88b5230e1e8afbdc2e>
04-10 15 : 10 : 04.159 I / MonoDroid (20065) : (๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.7 (intptr, intptr, intptr)
04-10 15 : 10 : 04.179 W / Grouping.Droid (20065) : JNI RegisterNativeMethods : android.runtime.JavaProxyThrowable์— ๋Œ€ํ•œ 0 ๋„ค์ดํ‹ฐ๋ธŒ ๋ฉ”์„œ๋“œ ๋“ฑ๋ก ์‹œ๋„
04-10 15 : 10 : 04.182 D / Mono (20065) : DllImport ๊ฒ€์ƒ‰ ์œ„์น˜ : '__Internal'( '(null)').
04-10 15 : 10 : 04.182 D / Mono (20065) : 'java_interop_jnienv_throw'๊ฒ€์ƒ‰ ์ค‘.
04-10 15 : 10 : 04.182 D / Mono (20065) : 'java_interop_jnienv_throw'ํ”„๋กœ๋น™.
04-10 15 : 10 : 04.182 D / Mono (20065) : 'java_interop_jnienv_throw'๋กœ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
04-10 15 : 10 : 07.132 E / mono (20065) :
04-10 15 : 10 : 07.132 E / mono (20065) : ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์˜ˆ์™ธ :
04-10 15 : 10 : 07.132 E / mono (20065) : System.TypeLoadException : ๋ถ€๋ชจ ํด๋ž˜์Šค vtable์„ ์ดˆ๊ธฐํ™”ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์›์ธ : Syncfusion.ListView.XForms.Android.Renderer.ScrollViewRenderer ์‹คํŒจ ์–ด์…ˆ๋ธ”๋ฆฌ : / storage / emulated / 0 / Android / data / Grouping.Droid / files /.__ override __ / Syncfusion.SfListView.XForms.Android.dll ์œ ํ˜• : ScrollViewRenderer ๋ฉค๋ฒ„ : (null)
04-10 15 : 10 : 07.132 E / mono (20065) : (๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.7 (intptr, intptr, intptr)
04-10 15 : 10 : 07.132 E / mono (20065) : at (๊ด€๋ฆฌ๋˜๋Š” ๊ธฐ๋ณธ ๋ž˜ํผ) Android.Runtime.DynamicMethodNameCounter.7 (intptr, intptr, intptr)
04-10 15 : 10 : 07.132 E / mono-rt (20065) : [์˜ค๋ฅ˜] ์น˜๋ช…์  ๋ฏธ์ฒ˜๋ฆฌ ์˜ˆ์™ธ : System.TypeLoadException : ๋‹ค์Œ ์›์ธ์œผ๋กœ ์ธํ•ด ๋ถ€๋ชจ ํด๋ž˜์Šค vtable์„ ์ดˆ๊ธฐํ™”ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. Syncfusion.ListView.XForms.Android ์œ ํ˜•์˜ VTable ์„ค์ •. Renderer.ScrollViewRenderer ์‹คํŒจ ์–ด์…ˆ๋ธ”๋ฆฌ : /storage/emulated/0/Android/data/Grouping.Droid/files /.__ override __ / Syncfusion.SfListView.XForms.Android.dll ์œ ํ˜• : ScrollViewRenderer ๋ฉค๋ฒ„ : (null)
04-10 15 : 10 : 07.132 E / mono-rt (20065) : at (๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.7 (intptr, intptr, intptr)
04-10 15 : 10 : 07.132 E / mono-rt (20065) : at (๊ด€๋ฆฌ๋˜๋Š” ๊ธฐ๋ณธ ๋ž˜ํผ) Android.Runtime.DynamicMethodNameCounter.7 (intptr, intptr, intptr)

์œ„์˜ ๋ฌธ์ œ๋Š”์ด github ๋ฌธ์ œ์˜ ์ฃผ์ œ์™€ ๊ด€๋ จ์ด ์—†์ง€๋งŒ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๊ณ ํ•˜๊ณ  ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ anwyays์— ๊ฒŒ์‹œ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค ... ๋˜ํ•œ ๋งค์šฐ ์‹ ์„ ํ•˜๊ณ  SF ์‚ฌ๋žŒ๋“ค์€ ์—ฌ์ „ํžˆ ์ด ์Šค๋ ˆ๋“œ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์œ„์˜ ์ž‘์—…์€ Xamarin.Forms 3.5.0.169047 ๋ฒ„์ „์—์„œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์žฌํ˜„ ์ƒ˜ํ”Œ์„ ์ฒจ๋ถ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. SF ์‚ฌ์ดํŠธ์—์„œ ์ฐพ์„ ์ˆ˜์žˆ๋Š” ์—…๋ฐ์ดํŠธ ๋œ SfListView ๊ทธ๋ฃนํ™” ์ƒ˜ํ”Œ์ž…๋‹ˆ๋‹ค. VS 2019 (v 16.0.0)์—์„œ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

SfListViewGrouping.zip

ํŽธ์ง‘ : Xamarin.Forms 3.5.0.274416 ๋ฒ„์ „์—์„œ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Œ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์–ด์ง„ ์ƒ˜ํ”Œ์—์„œ๋ณด๊ณ  ๋œ ์ฟผ๋ฆฌ๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณด๊ณ  ๋œ ์ถฉ๋Œ์€ ํŠน์ • Xamarin ๋ฒ„์ „ 3.5.0.169047์—์„œ๋งŒ ๋ฐœ์ƒ ํ•จ์„ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด ์ถฉ๋Œ์€ 3.5.0.169047 ์ดํ›„์— ์ถœ์‹œ ๋œ ๋ชจ๋“  ์ตœ์‹  ๋ฒ„์ „์—์„œ ์ˆ˜์ • ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๋Š” ํŠน์ • ๋ชฉ์ ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๋ณด๊ณ  ๋œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด Xamarin Forms ๋ฒ„์ „์„ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๊ทธ ๋‚˜๋‚˜ ํ”„๋ฆฌ ์•ผ N
(Syncfusion ํŒ€)

์ƒˆ ๋ฒ„์ „ (17.1.0.40)์€ Xamarin.Forms 3.6.0.293080์—์„œ ์ €์—๊ฒŒ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.
์ด์ œ ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ SDK ์–ด์…ˆ๋ธ”๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•  ๋•Œ ๋„ค์ดํ‹ฐ๋ธŒ ์ถฉ๋Œ์—†์ด iOS ๋ฐ Android ์•ฑ์„ ๋นŒ๋“œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ์‚ฌ.

Xamarin Forms ์‹œํ—˜ํŒ 4์—์„œ 17.1.0.40 ํฌ๋ž˜์‹œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ํ™•์ธํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. Prism ์‹œํ—˜ํŒ (xam 4 ํ•„์š”)์˜ ๊ธฐ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์ „ ๋ฆด๋ฆฌ์Šค 4๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ 17.1.0.40์˜ ๋ฌธ์ œ. ๋ชจ๋“  ๊ฒƒ์„ Xamarin Forms 3.6.x๋กœ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ–ˆ์œผ๋ฉฐ์ด ์Šค๋ ˆ๋“œ์˜ ์ฃผ์ œ ์ธ ๋งํฌ ๊ด€๋ จ ์›๋ž˜ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ํ”„๋ฆฌ ๋ฆด๋ฆฌ์ฆˆ 4๋กœ ์—…๋ฐ์ดํŠธ ํ•  ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•˜์—ฌ ๋ฏธ๋ฆฌ ์•Œ๋ ค์ฃผ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.

@SharbelWired ์Šคํƒ ์ถ”์ ์„ ๊ฒŒ์‹œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@SharbelWired ,

Syncfusion Xamarin.Forms ๊ตฌ์„ฑ ์š”์†Œ๋Š” Xamarin Forms ์•ˆ์ • ๋ฒ„์ „๊ณผ ๋งŒ ํ˜ธํ™˜๋จ์„ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ฌธ์„œ์—์„œ ์ด์— ๋Œ€ํ•ด ์–ธ๊ธ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฐธ์กฐ๋ฅผ ์œ„ํ•ด ๋งํฌ ์•„๋ž˜์˜ ๋ฌธ์„œ ์–‘์‹์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

UG ๋ฌธ์„œ ๋งํฌ : https://help.syncfusion.com/xamarin/introduction/compatibility-road-map

@samhouts , ์šฐ๋ฆฌ ํด๋ผ์ด์–ธํŠธ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ตœ์‹  ๋ฒ„์ „์˜ Xamarin.Forms v3.6.0.344457์„ ์„ค์น˜ ํ–ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ฐธ์กฐ ํฌ๋Ÿผ ์—์„œ ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜์— ์–ธ๊ธ‰ ๋œ ์ œ์•ˆ์— ๋”ฐ๋ผ์ด ๋ฒ„์ „์—์„œ ํ•ด๊ฒฐ๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.
https://github.com/xamarin/Xamarin.Forms/issues/5288#issuecomment -478075117

์ด ๋ฒ„์ „์—์„œ ๋ฌธ์ œ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ง€๊ธˆ ๊ฐ™์€ ์žฌ๋‚œ์„ ๊ฒช๊ณ ์žˆ๋‹ค

SfListView ๋ฒ„์ „ 17.2.035

Xamarin Forms ๋ฒ„์ „ 4.1.0.581479

@jrahma ์€ ์—ด์–ด์•ผํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.
๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ๋งŒ Android์—์„œ OOM ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
์ž ๋งˆ๋ฆฐ 3.6.539721
SfListView 17.2.0.35

Sflistview๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

XF 4.1๋กœ ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š์•˜๊ณ  ์—ฌ์ „ํžˆ 4.0์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Visual Studio๋ฅผ ์ตœ์‹  16.2๋กœ ์—…๋ฐ์ดํŠธํ–ˆ์œผ๋ฉฐ SfListView์™€์˜ ์—ฐ๊ฒฐ์—๋„ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒ„์ „์— ๋„์ž… ๋œ ์ƒˆ๋กœ์šด AOT์™€ ๊ด€๋ จ๋œ ๊ฒƒ์ด์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š”.

VS 16.2.0
XF ์•ˆ์ • 4.1.0.618606
SF 17.2.0.36

๋‚˜๋Š” ์ถฉ๋Œ์„ ๋ฐ›์•˜๋‹ค
[MonoDroid] System.Reflection.TargetInvocationException : ํ˜ธ์ถœ ๋Œ€์ƒ์—์„œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ---> System.NullReferenceException : ๊ฐœ์ฒด ์ฐธ์กฐ๊ฐ€ ๊ฐœ์ฒด์˜ ์ธ์Šคํ„ด์Šค๋กœ ์„ค์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
[MonoDroid]์˜ Android.Support.V4.Widget.NestedScrollView.SetOnScrollChangeListener (Android.Support.V4.Widget.NestedScrollView + IOnScrollChangeListener l) [0x0000c]์˜ <1e09550ab4e54a22a61340ec6b5f48a3> : 0
[MonoDroid] at Syncfusion.ListView.XForms.Android.ExtendedScrollViewRenderer..ctor (Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00007] in <1d13e866db284fb28ce6270fd09fd7e3> : 0
[MonoDroid] at (๋ž˜ํผ ๊ด€๋ฆฌ-๋„ค์ดํ‹ฐ๋ธŒ) System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Reflection.RuntimeConstructorInfo, object, object [], System.Exception &)
[MonoDroid] at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object [] ๋งค๊ฐœ ๋ณ€์ˆ˜, System.Boolean wrapExceptions) [0x00005] in <96c0fbcf1c2a46be95325bd99609a594> : 0
[MonoDroid] --- ๋‚ด๋ถ€ ์˜ˆ์™ธ ์Šคํƒ ์ถ”์  ๋ ---
[MonoDroid] at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object [] ๋งค๊ฐœ ๋ณ€์ˆ˜, System.Boolean wrapExceptions) [0x0001d] in <96c0fbcf1c2a46be95325bd99609a594> : 0
[MonoDroid] at System.Reflection.RuntimeConstructorInfo.DoInvoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] ๋งค๊ฐœ ๋ณ€์ˆ˜, System.Globalization.CultureInfo ๋ฌธํ™”๊ถŒ) [0x0007a] in < 96c0fbcf1c2a46be95325bd99609a594> : 0
System.Reflection.RuntimeConstructorInfo.Invoke์˜ [MonoDroid] (System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] ๋งค๊ฐœ ๋ณ€์ˆ˜, System.Globalization.CultureInfo ๋ฌธํ™”๊ถŒ) [0x00000] <96c0fbcf1c2a46be95325bd99609a594> : 0
System.RuntimeType.CreateInstanceImpl์˜ [MonoDroid] (System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] args, System.Globalization.CultureInfo ๋ฌธํ™”, System.Object [] activationAttributes, System.Threading.StackCrawlMark & stackMark) [0x0022b] in <96c0fbcf1c2a46be95325bd99609a594> : 0
System.Activator.CreateInstance์˜ [MonoDroid] (System.Type ํ˜•์‹, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder ๋ฐ”์ธ๋”, System.Object [] args, System.Globalization.CultureInfo culture, System.Object [] activationAttributes) [0x000a1] <96c0fbcf1c2a46be95325bd99609a594> : 0
System.Activator.CreateInstance์˜ [MonoDroid] (System.Type ์œ ํ˜•, System.Object [] args) [0x00000]์˜ <96c0fbcf1c2a46be95325bd99609a594> : 0
[MonoDroid] at Xamarin.Forms.Internals.DependencyResolver.ResolveOrCreate (System.Type ์œ ํ˜•, System.Object ์†Œ์Šค, System.Type visualType, System.Object [] args) [0x000af] in D : a1sXamarin.Forms.CoreDependencyResolver.cs : 58
[MonoDroid] at Xamarin.Forms.Internals.Registrar 1[TRegistrable].GetHandler (System.Type type, System.Object source, Xamarin.Forms.IVisual visual, System.Object[] args) [0x00052] in D:\a\1\s\Xamarin.Forms.Core\Registrar.cs:79 [MonoDroid] at Xamarin.Forms.Internals.Registrar 1 [TRegistrable] .GetHandlerForObject [TOut] (System.Object obj, System.Object [] args) [0x0002c] in D : a1sXamarin.Forms.CoreRegistrar .cs : 111
[MonoDroid] at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00010] in D : a1sXamarin.Forms.Platform.AndroidPlatform.cs : 342
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement ๋ทฐ, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms.Platform.Android.RendererPool ํ’€, System.Boolean sameChildren) D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 138์˜ [0x000af]
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 334
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 110
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [0x00007] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:438 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetElement (TElement ์š”์†Œ) [0x000e0] in D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer.cs : 239
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00027] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:127 [MonoDroid] at Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement element, Android.Content.Context context) [0x00044] in D:\a\1\s\Xamarin.Forms.Platform.Android\Platform.cs:345 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement view, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms.Platform.Android.RendererPool pool, System.Boolean sameChildren) [0x000af] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:138 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:334 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementPackager.cs:110 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [0x00007] in D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer .cs : 438
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetElement (TElement element) [0x000e0] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:239 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00027] in D : a1sXamarin .Forms.Platform.AndroidVisualElementRenderer.cs : 127
[MonoDroid] Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00044] D : a1sXamarin.Forms.Platform.AndroidPlatform.cs : 345
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.AddChild (Xamarin.Forms.VisualElement ๋ทฐ, Xamarin.Forms.Platform.Android.IVisualElementRenderer oldRenderer, Xamarin.Forms.Platform.Android.RendererPool ํ’€, System.Boolean sameChildren) D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 138์˜ [0x000af]
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00139] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 334
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementPackager.Load () [0x00000] in D : a1sXamarin.Forms.Platform.AndroidVisualElementPackager.cs : 110
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1[TElement].SetPackager (Xamarin.Forms.Platform.Android.VisualElementPackager packager) [0x00007] in D:\a\1\s\Xamarin.Forms.Platform.Android\VisualElementRenderer.cs:438 [MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer 1 [TElement] .SetElement (TElement ์š”์†Œ) [0x000e0] in D : a1sXamarin.Forms.Platform.AndroidVisualElementRenderer.cs : 239
[MonoDroid] at Xamarin.Forms.Platform.Android.VisualElementRenderer`1 [TElement] .Xamarin.Forms.Platform.Android.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00027] in D : a1sXamarin.Forms.Platform. AndroidVisualElementRenderer.cs : 127
[MonoDroid] Xamarin.Forms.Platform.Android.Platform.CreateRenderer (Xamarin.Forms.VisualElement ์š”์†Œ, Android.Support.V4.App.FragmentManager fragmentManager, Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00031] D : a1sXamarin.Forms .Platform.AndroidPlatform.cs : 393
[MonoDroid] at Xamarin.Forms.Platform.Android.AppCompat.FragmentContainer.OnCreateView (Android.Views.LayoutInflater inflater, Android.Views.ViewGroup container, Android.OS.Bundle savedInstanceState) [0x00008] in D : a1sXamarin.Forms.Platform .AndroidAppCompatFragmentContainer.cs : 56
[MonoDroid] at Android.Support.V4.App.Fragment.n_OnCreateView_Landroid_view_LayoutInflater_Landroid_view_ViewGroup_Landroid_os_Bundle_ (System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_inflater native_container8, System.inflater native_container85574cb78702cc25ccd55714IntPtr native_container8.IntPtr native_container8)
[MonoDroid] (๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.63 (intptr, intptr, intptr, intptr, intptr)
[art] JNI RegisterNativeMethods : android.runtime.JavaProxyThrowable์— ๋Œ€ํ•œ 0 ๊ฐœ์˜ ๋„ค์ดํ‹ฐ๋ธŒ ๋ฉ”์„œ๋“œ ๋“ฑ๋ก ์‹œ๋„
[Mono] DllImport ๊ฒ€์ƒ‰ : '__Internal'( '(null)').
[Mono] 'java_interop_jnienv_throw'๊ฒ€์ƒ‰ ์ค‘.
[Mono] 'java_interop_jnienv_throw'๋ฅผ ์กฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
[Mono] 'java_interop_jnienv_throw'๋กœ ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
[MonoDroid] ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์˜ˆ์™ธ :
[MonoDroid] System.Reflection.TargetInvocationException : ํ˜ธ์ถœ ๋Œ€์ƒ์—์„œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ---> System.NullReferenceException : ๊ฐœ์ฒด ์ฐธ์กฐ๊ฐ€ ๊ฐœ์ฒด์˜ ์ธ์Šคํ„ด์Šค๋กœ ์„ค์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
[MonoDroid]์˜ Android.Support.V4.Widget.NestedScrollView.SetOnScrollChangeListener (Android.Support.V4.Widget.NestedScrollView + IOnScrollChangeListener l) [0x0000c]์˜ <1e09550ab4e54a22a61340ec6b5f48a3> : 0
[MonoDroid] at Syncfusion.ListView.XForms.Android.ExtendedScrollViewRenderer..ctor (Android.Content.Context ์ปจํ…์ŠคํŠธ) [0x00007] in <1d13e866db284fb28ce6270fd09fd7e3> : 0
[MonoDroid] at (๋ž˜ํผ ๊ด€๋ฆฌ-๋„ค์ดํ‹ฐ๋ธŒ) System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Reflection.RuntimeConstructorInfo, object, object [], System.Exception &)
[MonoDroid] at System.Reflection.RuntimeConstructorInfo.InternalInvoke (System.Object obj, System.Object [] ๋งค๊ฐœ ๋ณ€์ˆ˜, System.Boolean wrapExceptions) [0x00005] in <96c0fbcf1c2a46be95325bd99609a594> : 0
[MonoDroid] --- ๋‚ด๋ถ€ ์˜ˆ์™ธ ์Šคํƒ ์ถ”์  ๋ ---
[MonoDroid] (๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.63 (intptr, intptr, intptr, intptr, intptr)
[MonoDroid] (๋ž˜ํผ ๊ธฐ๋ณธ ๊ด€๋ฆฌ) Android.Runtime.DynamicMethodNameCounter.63 (intptr, intptr, intptr, intptr, intptr)
[MonoDroid] at (๋ž˜ํผ ๊ด€๋ฆฌ-๋„ค์ดํ‹ฐ๋ธŒ) Java.Interop.NativeMethods.java_interop_jnienv_call_nonvirtual_void_method_a (intptr, intptr &, intptr, intptr, intptr, Java.Interop.JniArgumentValue )[MonoDroid] at Java.Interop.JniEnvironment + InstanceMethods.CallNonvirtualVoidMethod (Java.Interop.JniObjectReference ์ธ์Šคํ„ด์Šค, Java.Interop.JniObjectReference ์œ ํ˜•, Java.Interop.JniMethodInfo ๋ฉ”์†Œ๋“œ, Java.Interop.JniArgumentValue args) [0x00073]: 0
[MonoDroid] at Java.Interop.JniPeerMembers + JniInstanceMethods.InvokeNonvirtualVoidMethod (System.String encodeMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue * parameters) [0x0001f] in: 0
[MonoDroid]์˜ Android.Views.View.Measure (System.Int32 widthMeasureSpec, System.Int32 heightMeasureSpec) [0x00035]์˜ <207e29a54396482796911ec489e256ce> : 0
[MonoDroid] at Xamarin.Forms.Platform.Android.AppCompat.TabbedPageRenderer.OnLayout (System.Boolean changed, System.Int32 l, System.Int32 t, System.Int32 r, System.Int32 b) [0x0002c] in D : a1sXamarin .Forms.Platform.AndroidAppCompatTabbedPageRenderer.cs : 374
[MonoDroid] at Xamarin.Forms.Platform.Android.FormsViewGroup.n_OnLayout_ZIIII (System.IntPtr jnienv, System.IntPtr native__this, System.Boolean p0, System.Int32 p1, System.Int32 p2, System.Int32 p3, System.Int32 p4 ) [0x00008] D : a1sXamarin.Forms.Platform.Android.FormsViewGroupobjReleasegeneratedsrcXamarin.Forms.Platform.Android.FormsViewGroup.cs : 198
(๋ž˜ํผ ๋™์  ๋ฉ”์„œ๋“œ) Android.Runtime.DynamicMethodNameCounter.41 (intptr, intptr, bool, int, int, int, int)์—์„œ [MonoDroid]

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,

๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

๋ณด๊ณ  ๋œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ฒฐํ•จ ๋ณด๊ณ ์„œ๋ฅผ ์ด๋ฏธ ๊ธฐ๋กํ–ˆ์œผ๋ฉฐ ํ–ฅํ›„ ์ฃผ๊ฐ„ Nuget (์˜ˆ : 2019 ๋…„ 7 ์›” 30 ์ผ)์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ
[์‹ฑํฌ ํ“จ์ „ ํŒ€]

@DineshBabuYadav ํ•˜๋‚˜๋Š” ๋‚ด๊ฐ€ ์ถ”์ธกํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์ด ํŠน์ • ์–ด์…ˆ๋ธ”๋ฆฌ ์—ฐ๊ฒฐ์„ ๊ฑด๋„ˆ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,

๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.

๋ณด๊ณ  ๋œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ฒฐํ•จ ๋ณด๊ณ ์„œ๋ฅผ ์ด๋ฏธ ๊ธฐ๋กํ–ˆ์œผ๋ฉฐ ํ–ฅํ›„ ์ฃผ๊ฐ„ Nuget (์˜ˆ : 2019 ๋…„ 7 ์›” 30 ์ผ)์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ
[์‹ฑํฌ ํ“จ์ „ ํŒ€]

@DineshBabuYadav SfListView๋งŒ์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์ปจํŠธ๋กค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. MainPage์—์„œ SfRototator๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ด์ œ Visual Studio 16.2 ๋ฐ Syncfusion 17.2.036์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ์•ฑ์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค.

์žฌ๋‚œ ์•ฑ ์ถฉ๋Œ์„ ์ผ์œผํ‚จ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ผ์ฃผ์ผ์ด ๋งค์šฐ ๊ธด ์‹œ๊ฐ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์˜ˆ๋ฅผ ๋“ค์–ด, ๋‚ด ๊ณ ๊ฐ์ด ์ค€ ์ •๋ถ€ ์กฐ์ง์ด๊ณ  ๋‹ค๋ฅธ ๊ณ ๊ฐ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋ชจ๋ฐ”์ผ์—์„œ์˜ ์ „์ฒด eOperation์ด ์ผ์ฃผ์ผ ๋™์•ˆ ์ค‘๋‹จ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ๊ฐ€ ์ฆ‰์‹œ ํ•ด๊ฒฐ๋˜๋Š”์ง€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@jrahma ์ด์ „ Syncfusion ๋ฐ XF ๋ฒ„์ „์œผ๋กœ ์•ฑ์˜ ์ด์ „ ๋ฒ„์ „์„ ์ถœ์‹œํ–ˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ตœ์ข… ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜ํ–ฅ์„์ฃผ์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์˜ ์š”์ ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋กœ์ปฌ ๋นŒ๋“œ ๋˜๋Š” ์Šคํ…Œ์ด์ง•์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ์ „์— QA ํ…Œ์ŠคํŠธ์—†์ด ์ƒˆ ๋ฒ„์ „์„ ๊ฒŒ์‹œํ•˜์ง€ ์•Š๋Š” ํ•œ, ๊ทธ๊ฒƒ์€ ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค ๐Ÿ˜€.

SF ํŒ€์€ ๋ฌธ์ œ๋ฅผ ์กฐ์‚ฌํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•˜์‹ญ์‹œ์˜ค. ๋ฉฐ์น  ๊ฑธ๋ฆฌ๋Š” ๊ดœ์ฐฎ์•„

@jrahma ์ด์ „ Syncfusion ๋ฐ XF ๋ฒ„์ „์œผ๋กœ ์•ฑ์˜ ์ด์ „ ๋ฒ„์ „์„ ์ถœ์‹œํ–ˆ์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ตœ์ข… ์‚ฌ์šฉ์ž์—๊ฒŒ ์˜ํ–ฅ์„์ฃผ์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์˜ ์š”์ ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋กœ์ปฌ ๋นŒ๋“œ ๋˜๋Š” ์Šคํ…Œ์ด์ง•์—๋งŒ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ์ถœ์‹œ ์ „์— QA ํ…Œ์ŠคํŠธ์—†์ด ์ƒˆ ๋ฒ„์ „์„ ๊ฒŒ์‹œํ•˜์ง€ ์•Š๋Š” ํ•œ, ๊ทธ๊ฒƒ์€ ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค ๐Ÿ˜€

๊ทธ๊ฒŒ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ด์ „ ์•ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ์žฌํ•ด์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์•ฑ์€ ๋ชจ๋“  ๊ธฐ๊ธฐ์™€ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€๋งŒ์ด ๋ฌธ์ œ๋Š” Google Play์—์„œ ์•ฑ์„ ์„ค์น˜ํ•  ๋•Œ๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ Google Play Console์—์„œ ์–ป๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

java.lang.RuntimeException :
android.app.ActivityThread.installProvider (ActivityThread.java:6747)
android.app.ActivityThread.installContentProviders (ActivityThread.java:6289)
android.app.ActivityThread.handleBindApplication (ActivityThread.java:6204)์—์„œ
android.app.ActivityThread.access $ 1200 (ActivityThread.java:237)
android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1785)
android.os.Handler.dispatchMessage (Handler.java:106)
android.os.Looper.loop (Looper.java:214)
android.app.ActivityThread.main (ActivityThread.java:7050)
java.lang.reflect.Method.invoke (๋„ค์ดํ‹ฐ๋ธŒ ๋ฉ”์†Œ๋“œ)
com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit.java:493)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:965)
์›์ธ : java.lang.ClassNotFoundException :
dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:134)
java.lang.ClassLoader.loadClass (ClassLoader.java:379)
java.lang.ClassLoader.loadClass (ClassLoader.java:312)
android.app.AppComponentFactory.instantiateProvider (AppComponentFactory.java:121)
android.app.ActivityThread.installProvider (ActivityThread.java:6731)

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,

์•ฝ์† ํ•œ๋Œ€๋กœ 2019 ๋…„ 7 ์›” 30 ์ผ์— ๋ฆด๋ฆฌ์Šค๊ฐ€ ์ถœ์‹œ๋˜๋ฉด ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

@jrahma , ์šฐ๋ฆฌ๋Š” SfRotator ํŒ€๊ณผ ํ™•์ธ ์ค‘์ด๋ฉฐ ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ B

@DineshBabuYadav ํ•˜๋‚˜๋Š” ๋‚ด๊ฐ€ ์ถ”์ธกํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์ด ํŠน์ • ์–ด์…ˆ๋ธ”๋ฆฌ ์—ฐ๊ฒฐ์„ ๊ฑด๋„ˆ ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ˆ, ๊ทธ๋•Œ๊นŒ์ง€๋Š”์ด ์—ฐ๊ฒฐ ์˜ต์…˜์„ ๊ฑด๋„ˆ ๋›ฐ์–ด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ž์ฒด์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ์ž๊ฐ€ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ด์ „ ์•ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ์žฌํ•ด์™€ ํ•จ๊ป˜ ์ œ๊ณต๋˜๋Š” ์ˆ˜์ •์„ ๊ธฐ๋‹ค๋ฆฌ๊ณ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์•ฑ์€ ๋ชจ๋“  ๊ธฐ๊ธฐ์™€ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์—์„œ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€๋งŒ์ด ๋ฌธ์ œ๋Š” Google Play์—์„œ ์•ฑ์„ ์„ค์น˜ํ•  ๋•Œ๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ํ…Œ์ŠคํŠธํ•˜๋Š” ๊ฒƒ๊ณผ Google Play์—์„œ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๋‹น์‹ ์€ ๋˜ํ•œ ๋ฆด๋ฆฌ์Šค์—์„œ ์‹คํ–‰ํ•  ๋•Œ ์ด๊ฒƒ์„ ๋ฐ›์•„์•ผํ•ฉ๋‹ˆ๋‹ค, ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๊นŒ?
xf 4.1.0.581479 ๋ฐ sflistview 17.1.0.52๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ „์ฒด ๋งํฌ์— ๋ฌธ์ œ๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ด ์ด์ƒํ•ฉ๋‹ˆ๋‹ค. VS4Mac 2019์—์„œ ๋ฆด๋ฆฌ์Šค ๋นŒ๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— VS 2019 Windows์—์„œ๋งŒ ๋ฌธ์ œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@EmilAlipiev ๊ธ€์Ž„ ๊ทธ๊ฒƒ์€ VS2019 ์ตœ์‹ ๊ณผ ๋งŒ ์—ฐ๊ฒฐ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Syncfusion ํŒจํ‚ค์ง€ ๋‚˜ Xamarin Forms๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š๊ณ  VS ๋งŒ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค. 16.2.0์€ AOT ๋ฐ ๋ฒˆ๋“ค ์–ด์…ˆ๋ธ”๋ฆฌ์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@vincentcastagna ์ด๋Ÿฌํ•œ ์„ค์ •์€ ์ด์ „ ๋ฒ„์ „๊ณผ 2019์—๋„ ์กด์žฌํ•˜๋ฉฐ ์ ์–ด๋„ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๋ฒ„์ „์—๋Š” ์กด์žฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฒ„์ „์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ? ๋ฌธ์ œ๊ฐ€์žˆ๋Š” ๋ถ„๋“ค์€ VS์˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฒ„์ „์ž„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

VS 16.2.0 ๋ฐ VS for Mac 8.2์™€ ๋™์ผํ•œ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๋ผ์ด์„ ์Šค์ž…๋‹ˆ๋‹ค.

Mac 8.3 ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค. ๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์œ„ํ•ด ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜์ค‘์— 16.2 ๋Œ€๋ฅผ ํ™•์ธํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@EmilAlipiev ๊ทธ๋ž˜ ๋‚˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฒ„์ „์— ์žˆ์Šต๋‹ˆ๋‹ค

๋ณด๊ณ  in. VS2019 16.1.6 / XF 4.1.0.618606 / SfListView 17.2.0.35
์—ฐ๊ฒฐ ์—†์Œ์„ ์„ค์ •ํ•˜๋ฉด ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ๋งŒ ๋‚˜ํƒ€๋‚˜๋Š” ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

VS MAC 8.2 (1105)
XF ์•ˆ์ • 4.1.0.618606
SF 17.2.0.36

๋‚˜๋Š” ์ถฉ๋Œ์„ ๋ฐ›์•˜๋‹ค
[MonoDroid] System.Reflection.TargetInvocationException : ํ˜ธ์ถœ ๋Œ€์ƒ์—์„œ ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ---> System.NullReferenceException : ๊ฐœ์ฒด ์ฐธ์กฐ๊ฐ€ ๊ฐœ์ฒด์˜ ์ธ์Šคํ„ด์Šค๋กœ ์„ค์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
[MonoDroid]์˜ Android.Support.V4.Widget.NestedScrollView.SetOnScrollChangeListener (Android.Support.V4.Widget.NestedScrollView + IOnScrollChangeListener l) [0x0000c]์˜ <1e09550ab4e54a22a61340ec6b5f48a3> : 0

+1

17.1.0.52๋กœ ๋‹ค์šด ๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ๋ฆด๋ฆฌ์Šค ๋ชจ๋“œ์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. VS mac ๋ฐ VS Windows ์ตœ์‹  ์—…๋ฐ์ดํŠธ๋ฅผ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,

๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ตœ์‹  ์ฃผ๊ฐ„ NuGet ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ ๋ฒ„์ „ 17.2.0.39 ๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์œผ๋ฉฐ๋ณด๊ณ  ๋œ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์œผ๋ฉฐ ๋‹ค์šด๋กœ๋“œ ํ•  ์ˆ˜ ์žˆ์Œ์„ ์•Œ๋ ค ๋“œ๋ฆฌ๊ฒŒ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค (

๊ท€ํ•˜์˜ ์ง€์›์— ๊ฐ์‚ฌ ๋“œ๋ฆฌ๋ฉฐ์ด ์—…๋ฐ์ดํŠธ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋™์•ˆ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์ง€์›์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋‹น์‚ฌ์— ๋ฌธ์˜ํ•˜์‹ญ์‹œ์˜ค.

๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,
๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.
๋ณด๊ณ  ๋œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ฒฐํ•จ ๋ณด๊ณ ์„œ๋ฅผ ์ด๋ฏธ ๊ธฐ๋กํ–ˆ์œผ๋ฉฐ ํ–ฅํ›„ ์ฃผ๊ฐ„ Nuget (์˜ˆ : 2019 ๋…„ 7 ์›” 30 ์ผ)์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ
[์‹ฑํฌ ํ“จ์ „ ํŒ€]

@DineshBabuYadav SfListView๋งŒ์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์ปจํŠธ๋กค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. MainPage์—์„œ SfRototator๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ด์ œ Visual Studio 16.2 ๋ฐ Syncfusion 17.2.036์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ์•ฑ์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค.

์žฌ๋‚œ ์•ฑ ์ถฉ๋Œ์„ ์ผ์œผํ‚จ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ผ์ฃผ์ผ์ด ๋งค์šฐ ๊ธด ์‹œ๊ฐ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์˜ˆ๋ฅผ ๋“ค์–ด, ๋‚ด ๊ณ ๊ฐ์ด ์ค€ ์ •๋ถ€ ์กฐ์ง์ด๊ณ  ๋‹ค๋ฅธ ๊ณ ๊ฐ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋ชจ๋ฐ”์ผ์—์„œ์˜ ์ „์ฒด eOperation์ด ์ผ์ฃผ์ผ ๋™์•ˆ ์ค‘๋‹จ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ๊ฐ€ ์ฆ‰์‹œ ํ•ด๊ฒฐ๋˜๋Š”์ง€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@jrahma , ๋น ๋ฅธ ์‹œ์ผ ๋‚ด์— ๋ถ„์„ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  SfRotator ์ถฉ๋Œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์Šคํƒ ์ถ”์  ๋ฐ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋ฌธ์•ˆ ์ธ์‚ฌ,
ํด ์•ค๋”์Šจ

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค @DineshBabuYadav ๋‹ค์‹œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค!
Kudos Syncfusion ํŒ€!

@xamarindevelopervietnam , ์—…๋ฐ์ดํŠธ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,
๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.
๋ณด๊ณ  ๋œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ฒฐํ•จ ๋ณด๊ณ ์„œ๋ฅผ ์ด๋ฏธ ๊ธฐ๋กํ–ˆ์œผ๋ฉฐ ํ–ฅํ›„ ์ฃผ๊ฐ„ Nuget (์˜ˆ : 2019 ๋…„ 7 ์›” 30 ์ผ)์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ
[์‹ฑํฌ ํ“จ์ „ ํŒ€]

@DineshBabuYadav SfListView๋งŒ์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์ปจํŠธ๋กค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. MainPage์—์„œ SfRototator๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ด์ œ Visual Studio 16.2 ๋ฐ Syncfusion 17.2.036์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ์•ฑ์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค.

์žฌ๋‚œ ์•ฑ ์ถฉ๋Œ์„ ์ผ์œผํ‚จ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ผ์ฃผ์ผ์ด ๋งค์šฐ ๊ธด ์‹œ๊ฐ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

์˜ˆ๋ฅผ ๋“ค์–ด, ๋‚ด ๊ณ ๊ฐ์ด ์ค€ ์ •๋ถ€ ์กฐ์ง์ด๊ณ  ๋‹ค๋ฅธ ๊ณ ๊ฐ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋ชจ๋ฐ”์ผ์—์„œ์˜ ์ „์ฒด eOperation์ด ์ผ์ฃผ์ผ ๋™์•ˆ ์ค‘๋‹จ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ด ๋ฌธ์ œ๊ฐ€ ์ฆ‰์‹œ ํ•ด๊ฒฐ๋˜๋Š”์ง€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@jrahma : ๋กœํ…Œ์ดํ„ฐ ์ œ์–ด์™€ ๊ด€๋ จ๋œ ์Šคํƒ ํŠธ๋ ˆ์ด์Šค์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ ๋œ ๋กœํ…Œ์ดํ„ฐ์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ๊ณต์œ ํ•ด ์ฃผ์‹œ๋ฉด ๋น ๋ฅธ ์‹œ์ผ ๋‚ด์— ๋ถ„์„ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„,
๋ถˆํŽธ์„ ๋ผ์ณ ๋“œ๋ ค ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค.
๋ณด๊ณ  ๋œ ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ฒฐํ•จ ๋ณด๊ณ ์„œ๋ฅผ ์ด๋ฏธ ๊ธฐ๋กํ–ˆ์œผ๋ฉฐ ํ–ฅํ›„ ์ฃผ๊ฐ„ Nuget (์˜ˆ : 2019 ๋…„ 7 ์›” 30 ์ผ)์— ์ˆ˜์ • ์‚ฌํ•ญ์ด ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋ฌธ์•ˆ ์ธ์‚ฌ,
๋”” ๋„ค์‹œ ๋ฐ”๋ถ€ ์•ผ๋‹ค ๋ธŒ
[์‹ฑํฌ ํ“จ์ „ ํŒ€]

@DineshBabuYadav SfListView๋งŒ์ด ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์ปจํŠธ๋กค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. MainPage์—์„œ SfRototator๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ด์ œ Visual Studio 16.2 ๋ฐ Syncfusion 17.2.036์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•œ ํ›„ ์•ฑ์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค.
์žฌ๋‚œ ์•ฑ ์ถฉ๋Œ์„ ์ผ์œผํ‚จ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์ผ์ฃผ์ผ์ด ๋งค์šฐ ๊ธด ์‹œ๊ฐ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?
์˜ˆ๋ฅผ ๋“ค์–ด, ๋‚ด ๊ณ ๊ฐ์ด ์ค€ ์ •๋ถ€ ์กฐ์ง์ด๊ณ  ๋‹ค๋ฅธ ๊ณ ๊ฐ์€ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์•ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋ชจ๋ฐ”์ผ์—์„œ์˜ ์ „์ฒด eOperation์ด ์ผ์ฃผ์ผ ๋™์•ˆ ์ค‘๋‹จ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?
์ด ๋ฌธ์ œ๊ฐ€ ์ฆ‰์‹œ ํ•ด๊ฒฐ๋˜๋Š”์ง€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

@jrahma : ๋กœํ…Œ์ดํ„ฐ ์ œ์–ด์™€ ๊ด€๋ จ๋œ ์Šคํƒ ํŠธ๋ ˆ์ด์Šค์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์‚ฌ์šฉ ๋œ ๋กœํ…Œ์ดํ„ฐ์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ๊ณต์œ ํ•ด ์ฃผ์‹œ๋ฉด ๋น ๋ฅธ ์‹œ์ผ ๋‚ด์— ๋ถ„์„ํ•˜๊ณ  ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@DineshBabuYadav ๋ชจ๋‘๋ฅผ ์œ„ํ•ด ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค .. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ํŒ€

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰