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

هماهنگ کردن ارتفاع لیبل و متن درون لیبل


amir mahdizadeh

سوال

سلام خدمت همه عزیزان

من یه سری لیبل با مولتی پنل ایجاد کردم درون هر کدوم یه متنی از دیتابیس گرفته میشه و داخل لیبل نشون میده حالا چطور میتونم کاری کنم که اگه متن داخل لیبل زیاد شد ارتفاع لیبل هم زیاد بشه؟

اینو هم بگم که سرچ کردم جواب های دوستان رو استفاده کردم اما نتیجه نگرفتم

اینم کد هام

ممنون از راهنمایی های دوستان

If ghoran.cur3.RowCount>0 Then
		ghoran.cur3.Position=0
		lbl2.Text=ghoran.cur3.GetString("onvan")
		lbl2.Gravity=Gravity.CENTER
		lbl2.Typeface=Typeface.LoadFromAssets("yekan.ttf")
		lbl2.TextSize=25
		lbl2.TextColor=Colors.White
		str1=ghoran.cur3.GetString("matn")
		Dim listAyeha() As String
		listAyeha=Regex.Split("#",str1)	
		For i=0 To listAyeha.Length-1
			ghoran.cur3.Position=i
			Dim p As Panel
			p.Initialize("p")
			ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
			stop = stop + 11%y
			p.LoadLayout("scroll")
			Label1.Text=listAyeha(i)
			Label1.Gravity=Gravity.CENTER
			Label1.TextColor=Colors.Black
			Label1.Typeface=Typeface.LoadFromAssets("yekan.ttf")
			Label1.TextSize=22
			ScrollView1.Panel.Height=stop
		Next
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

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

سلام.اینارو امتحان کنید.

کتابخونه StringUtils رو هم تیک بزن

Sub Globals
	Dim myfont As Typeface
	 Dim text As String
	 Dim ht As Float
	 Dim StrUtil As StringUtils
	 Dim PanelHeight As Int
End Sub

   Dim p1 As Panel
   p1.Initialize("")
   p1.LoadLayout("main")
   ScrollView1.Panel.AddView(p1,0,PanelHeight,100%x,100dip)

	text= cur.GetString("matn")
    myfont = Typeface.LoadFromAssets("yekan.ttf")
	
   ht=art(text,Label1,myfont,20)
    Label1.TextColor =Colors.Black
	
   p1.Height=ht+400dip
   PanelHeight=ht+400dip
   
	Next
ScrollView1.Panel.Height=PanelHeight


 Sub art(txt As String,leb As Label,font As Typeface,size As Int) As Float
   Dim before,after As Float
   Dim Obj1 As Reflector
   leb.text=txt
   leb.TextSize=size
   leb.Gravity=Gravity.CENTER
   leb.Left=leb.Left
   leb.Typeface=font
 ht = StrUtil.MeasureMultilineTextHeight(leb , txt)
   Obj1.Target = leb
   before = Obj1.RunMethod("getLineHeight")
   Obj1.Target = leb
   Obj1.RunMethod3("setLineSpacing", .10 ,"java.lang.float", 1.5, "java.lang.float")
   Obj1.Target = leb
   after = Obj1.RunMethod("getLineHeight")
   ht = ((after * ht)/before)
   leb.Height = ht
 Return  ht 
   
 End Sub 
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

سلام.اینارو امتحان کنید.

کتابخونه StringUtils رو هم تیک بزن

Sub Globals
	Dim myfont As Typeface
	 Dim text As String
	 Dim ht As Float
	 Dim StrUtil As StringUtils
	 Dim PanelHeight As Int
End Sub

   Dim p1 As Panel
   p1.Initialize("")
   p1.LoadLayout("main")
   ScrollView1.Panel.AddView(p1,0,PanelHeight,100%x,100dip)

	text= cur.GetString("matn")
    myfont = Typeface.LoadFromAssets("yekan.ttf")
	
   ht=art(text,Label1,myfont,20)
    Label1.TextColor =Colors.Black
	
   p1.Height=ht+400dip
   PanelHeight=ht+400dip
   
	Next
ScrollView1.Panel.Height=PanelHeight


 Sub art(txt As String,leb As Label,font As Typeface,size As Int) As Float
   Dim before,after As Float
   Dim Obj1 As Reflector
   leb.text=txt
   leb.TextSize=size
   leb.Gravity=Gravity.CENTER
   leb.Left=leb.Left
   leb.Typeface=font
 ht = StrUtil.MeasureMultilineTextHeight(leb , txt)
   Obj1.Target = leb
   before = Obj1.RunMethod("getLineHeight")
   Obj1.Target = leb
   Obj1.RunMethod3("setLineSpacing", .10 ,"java.lang.float", 1.5, "java.lang.float")
   Obj1.Target = leb
   after = Obj1.RunMethod("getLineHeight")
   ht = ((after * ht)/before)
   leb.Height = ht
 Return  ht 
   
 End Sub

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

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

بفرما سورس پیامک رمضان که با مولتی پنله و تنظیم ازتفاع هم میشه

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

بایگانی شده

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

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

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