رفتن به مطلب
  • 0

خطای MSMaterialDrawer و خطا بعد از کامپایل


python

سوال

سلام دوستان

من سورسی دارم که موقع کامپایل و بعد از نصب خطا میده

تمام کتابخانه های مورد نیاز رو هم نصب کردم اما نتیجه نداده

خطای بعد از نصب:

** Activity (main) Create, isFirst = true **
ActionBar Height: 56
android.view.InflateException: Binary XML file line #2: Binary XML file line #2: Error inflating class android.support.v4.widget.DrawerLayout
Caused by: android.view.InflateException: Binary XML file line #2: Error inflating class android.support.v4.widget.DrawerLayout
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.widget.DrawerLayout" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/b4a.ramezan-jUJOpRplCWntht9n8k6g0Q==/base.apk"],nativeLibraryDirectories=[/data/app/b4a.ramezan-jUJOpRplCWntht9n8k6g0Q==/lib/arm64, /system/lib64, /product/lib64]]
	at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
	at android.view.LayoutInflater.createView(LayoutInflater.java:613)
	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:801)
	at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
	at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
	at com.mikepenz.materialdrawer.Drawer.withDrawerLayout(Drawer.java:334)
	at com.mikepenz.materialdrawer.Drawer.build(Drawer.java:1090)
	at com.maximussoft.msmaterialdrawer.MSMaterialDrawerBuilder.Build(MSMaterialDrawerBuilder.java:122)
	at b4a.ramezan.main._activity_create(main.java:503)
	at java.lang.reflect.Method.invoke(Native Method)
	at anywheresoftware.b4a.BA.raiseEvent2(BA.java:196)
	at b4a.ramezan.main.afterFirstLayout(main.java:104)
	at b4a.ramezan.main.access$000(main.java:17)
	at b4a.ramezan.main$WaitForLayout.run(main.java:82)
	at android.os.Handler.handleCallback(Handler.java:907)
	at android.os.Handler.dispatchMessage(Handler.java:105)
	at android.os.Looper.loop(Looper.java:216)
	at android.app.ActivityThread.main(ActivityThread.java:7625)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
android.view.InflateException: Binary XML file line #2: Binary XML file line #2: Error inflating class android.support.v4.widget.DrawerLayout

اسکرین شات روی گوشی بعد از نصب:

tv5_screenshot_20200424_143427.jpg

 

خطا موقع تاچ روی منو:

 

** Activity (main) Resume **
main_menui_click (java line: 665)
java.lang.RuntimeException: Object should first be initialized (MSMaterialDrawer).
	at anywheresoftware.b4a.AbsObjectWrapper.getObject(AbsObjectWrapper.java:50)
	at com.maximussoft.msmaterialdrawer.MSMaterialDrawer.OpenDrawer(MSMaterialDrawer.java:15)
	at b4a.ramezan.main._menui_click(main.java:665)
	at java.lang.reflect.Method.invoke(Native Method)
	at anywheresoftware.b4a.BA.raiseEvent2(BA.java:196)
	at anywheresoftware.b4a.BA.raiseEvent2(BA.java:180)
	at anywheresoftware.b4a.BA.raiseEvent(BA.java:176)
	at anywheresoftware.b4a.objects.ViewWrapper$1.onClick(ViewWrapper.java:80)
	at android.view.View.performClick(View.java:6659)
	at android.view.View.performClickInternal(View.java:6631)
	at android.view.View.access$3100(View.java:790)
	at android.view.View$PerformClick.run(View.java:26187)
	at android.os.Handler.handleCallback(Handler.java:907)
	at android.os.Handler.dispatchMessage(Handler.java:105)
	at android.os.Looper.loop(Looper.java:216)
	at android.app.ActivityThread.main(ActivityThread.java:7625)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
java.lang.RuntimeException: Object should first be initialized (MSMaterialDrawer).

اسکرین شات از خطای روی گوشی

1gcc_screenshot_20200424_143.jpg

 

 

 

با دیباگ هم چک کردم به این خط گیر داد

Sub menui_Click
	MD.OpenDrawer 
End Sub

 

ممنون میشم راهنمایی کنید

اگر نیاز هست سورس رو هم ارسال کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

7 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

کد هاتون رو بزارید

صدرصد مشکل از اینیشیالایز هستش

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

این مشکل Androidx هست که متاسفانه حل نمیشه.

تو سایت مرجع هم گفته شده از این کتابخونه استفاده نکنید و از B4XDrawer استفاده کنید.

https://www.b4x.com/android/forum/threads/msmaterialdrawer-and-targetsdkversion-28-and-b4a-ver-9-30.109084/

https://www.b4x.com/android/forum/threads/msmaterialdrawer.53883/page-13

 

به احتمال %99 از خط Md = Mdb.Build داره ایراد میگیره که متاسفانه به هیچ وجه قابل حل نیست...

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 19 دقیقه قبل، Mr.Kafiri گفته است :

کد هاتون رو بزارید

صدرصد مشکل از اینیشیالایز هستش

این کدهای من هستش

#Region  Activity Attributes 
	#FullScreen: false
	#IncludeTitle: false
#End Region
#AdditionalJar: android-support-v7-appcompat
#AdditionalRes: ..\resource
#AdditionalRes: ..\md-app\res
#AdditionalRes: ..\md-lib\res

Sub Process_Globals
	Dim iransans As Typeface
	Dim timClock As Timer
End Sub

Sub Globals
	Private ListView1 As ListView
	Dim AC As AppCompat
	Private ActionBar As Panel
	Dim MDB As MSMaterialDrawerBuilder
	Dim MD As MSMaterialDrawer
	Dim i As Intent
	Private saat As Label
	Dim TimeFont As Typeface
	Private Label1 As Label
	Dim menui As Button
	Dim ALabel As Label
	Dim clock As ImageView
	Dim Panel2 As Panel
	Dim Panel1 As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("main")
	
Log("ActionBar Height: " & (AC.GetMaterialActionBarHeight / DipToCurrent(1)))

	ListView1.AddSingleLine("تست 1")
	ListView1.AddSingleLine("تست 2")
	ListView1.AddSingleLine("تست 3")
	ListView1.AddSingleLine("تست 4")
	ListView1.AddSingleLine("تست 5")
	ListView1.AddSingleLine("تست 6")
	ListView1.AddSingleLine("تست 7")

	AC.SetElevation(ActionBar, 8dip)
	AC.SetElevation(Panel1, 4dip)
	AC.SetElevation(Panel2, 4dip)
	iransans = Typeface.LoadFromAssets("iransans.ttf")  
	Label1.Typeface = iransans
	ALabel.Typeface = iransans
	saat.TextSize = 20
	saat.TextColor = Colors.White
	saat.Text = "00:00"
	DateTime.TimeFormat = "HH:mm:ss"
	timClock.Initialize("timClock",1)
	timClock.Enabled = True
	TimeFont = Typeface.LoadFromAssets("BNaznnBd.ttf")
	saat.Typeface = TimeFont
	
	Dim l As Label
		l = ListView1.SingleLineLayout.Label
		l.TextColor = Colors.RGB(124,179,66)
		l.Gravity = Gravity.CENTER
		l.TextSize = 20
		l.Typeface=Typeface.LoadFromAssets("iransans.ttf")
		
		Dim pnlHdr As Panel 
	pnlHdr.Initialize("")
	pnlHdr.Color = Colors.DarkGray 
	pnlHdr.Tag = "Header"

	Dim msa As MSAccountHeaderBuilder 
	Dim HeaderBackground As BitmapDrawable
	
	HeaderBackground.Initialize(LoadBitmap(File.DirAssets,"header.png"))
	msa.Initialize("MSA")
	msa.withHeaderBackground(HeaderBackground)
	Dim MaterialHeaderResult As Object = msa.build 
	
	Dim p1 As MSIconicDrawable : p1.Initialize("gmd_settings"): p1.Color = 0xFF737373
	Dim p2 As MSIconicDrawable : p2.Initialize("gmd_email"): p2.Color = 0xFF737373
	Dim p3 As MSIconicDrawable : p3.Initialize("gmd_info"): p3.Color = 0xFF737373
	Dim p4 As MSIconicDrawable : p4.Initialize("gmd_stay_current_portrait"): p4.Color = 0xFF737373
	Dim p5 As MSIconicDrawable : p5.Initialize("gmd_person"): p5.Color = 0xFF737373

	
	MDB.Initialize("MD")
	MDB.withAccountHeader(MaterialHeaderResult)
	'MDB.withHeader(pnlHdr, -1, 80dip)
	MDB.AddPrimaryDrawerItem  ("تنظیمات برنامه"  , p1.Drawable ,Null ,"" ,True,1, "")
	MDB.AddPrimaryDrawerItem  ("تماس با ما"  , p2.Drawable ,Null ,"" ,True,2, "")
	MDB.AddPrimaryDrawerItem  ("درباره ما"  , p3.Drawable ,Null ,"" ,True,3, "")
	MDB.AddPrimaryDrawerItem  ("برنامه های دیگر ما" , p4.Drawable ,Null ,""   ,True,4, "")

	
	MDB.AddSectionDrawerItem  ("سایر اطلاعات"  ,True)
	MDB.AddSecondaryDrawerItem("- نگارش 2.0" ,Null        ,Null ,""    ,False ,6)
	MDB.AddSecondaryDrawerItem("- تمامی حقوق برای  محفوظ است."       ,Null        ,Null ,""    ,False,7)
	MDB.withDrawerGravity(Gravity.RIGHT)
	MD = MDB.Build 
	
End Sub
Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub ListView1_ItemClick (Position As Int, Value As Object)
	If Position = 0 Then
	StartActivity("doa")

	End If
	
	If Position = 1 Then
	StartActivity("sms")
	End If
	
	If Position = 2 Then
	StartActivity("salavat")
	End If
	
	If Position = 3 Then
 If File.Exists(File.DirRootExternal,"test.pdf")=False Then
		File.copy(File.DirAssets,"test.pdf",File.DirRootExternal,"test.pdf")
	End If
	Dim pm As PackageManager
    Dim Intent1 As Intent
    Intent1.Initialize(Intent1.ACTION_VIEW, "file://" & File.Combine(File.DirRootExternal&"/", "testr.pdf"))
    Intent1.SetType("application/pdf")
	If pm.QueryIntentActivities(Intent1).Size = 0 Then
		Msgbox("برنامه ای برای نمایش فایل PDF نصب نیست.","خطا")
	Else
		Intent1.WrapAsIntentChooser("نمایش با:")
		StartActivity(Intent1)
	End If
	End If
	
	If Position = 4 Then
'	StartActivity(pish)
	End If
	If Position = 5 Then
'	StartActivity(zang)
	End If
End Sub


Sub menui_Click
	MD.OpenDrawer 
End Sub


Sub timclock_Tick
	saat.Text = DateTime.Time(DateTime.Now)
End Sub

Sub Activity_keypress(keycode As Int) As Boolean
Dim aa As Int
  If keycode=KeyCodes.KEYCODE_BACK Then
  aa =Msgbox2("آیا میخواهید از برنامه بیرون بروید؟","خروج","بله","","خیر",Null)
  If aa=DialogResponse.POSITIVE Then
  Return False
 Else
 Return True
 End If
 End If
 End Sub

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 16 دقیقه قبل، Salar82 گفته است :

سلام

این مشکل Androidx هست که متاسفانه حل نمیشه.

تو سایت مرجع هم گفته شده از این کتابخونه استفاده نکنید و از B4XDrawer استفاده کنید.

https://www.b4x.com/android/forum/threads/msmaterialdrawer-and-targetsdkversion-28-and-b4a-ver-9-30.109084/

https://www.b4x.com/android/forum/threads/msmaterialdrawer.53883/page-13

 

به احتمال %99 از خط Md = Mdb.Build داره ایراد میگیره که متاسفانه به هیچ وجه قابل حل نیست...

راه حلی نداره؟

متاسفانه من تازه کارم نمیدونم چیکار کنم

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، python گفته است :

راه حلی نداره؟

متاسفانه من تازه کارم نمیدونم چیکار کنم

 

نه متاسفانه

بیسیک ضعف های خیلی زیادی داره که اینم یکی از اوناست.

ولی من پیشنهاد میکنم از این(DsNavigationDrawer) استفاده کنید و همونطور هم که میدونید، باید با تحریم شکن کار کنید.

screenshot_20160826-160906-png.47461

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در در 5 اردیبهشت 1399 در 15:23، Salar82 گفته است :

نه متاسفانه

بیسیک ضعف های خیلی زیادی داره که اینم یکی از اوناست.

ولی من پیشنهاد میکنم از این(DsNavigationDrawer) استفاده کنید و همونطور هم که میدونید، باید از تحریم شکن کار کنید.

screenshot_20160826-160906-png.47461

متاسفانه نتنونستم پیاده کنم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

لینکش رو که گذاشتم

در در 5 اردیبهشت 1399 در 15:23، Salar82 گفته است :

https://www.b4x.com/android/forum/threads/designsupport-additional-material-design-components.58893/

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...