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

دو سوال مهم در رابطه با گذاشتن عکس در دیتابیس (لطفا جواب بدید خیلی فوری)


MahdiHD

سوال

سلام به همه دوستان من با استفاده از کد زیر عکس و متن از دیتابیس می گیرم و نمایش می دم 90 درصد کار درسته ولی دوتا مشکل کوچیک ولی مهم دارم :

1- عکس ها در تبلت ها کامل نشون داده می شه ولی در گوشی ها برش داده می شه و نمایش پیدا می کنه (سایز عکس کم نمی شه از اطراف برش داده می شه و نمایش پیدا می کنه) چه جوری باید این مشکل رو رفع کنم؟

2- سوال دوم این که من 24 رکورد دارم که یکی در میان متن و عکس هست ولی دوتای آخری نمایش پیدا نمی کنه چرا؟

این هم کدی که ازش استفاده می کنم:

Sub show
Dim sh As Int
sh=0
Dim cur As Cursor
cur=s.ExecQuery("SELECT * FROM Tbl")
Dim h As Int
h = 2%y
For i = 0 To cur.RowCount-1
cur.Position=i
If cur.GetInt("Type")= 0 Then
Dim Lbl As Label
Lbl.Initialize("")
Lbl.Text=cur.GetString("Value")
Lbl.TextSize=20
Lbl.TextColor=Colors.Black
Lbl.Typeface = Typeface.LoadFromAssets("BYEKAN.TTF")
ScrollView1.Panel.AddView(Lbl,2%x,h,96%x,0)
Dim su As StringUtils
Lbl.Height=su.MeasureMultilineTextHeight(Lbl,Lbl.Text)
h = h + Lbl.Height + 2%y
sh=sh+Lbl.Height
ScrollView1.Panel.Height=sh
Else
Dim img As ImageView
img.Initialize("")
img.Bitmap=Namayesh(i)
Dim bp As BitmapExtended
bp.Initialize("")
ScrollView1.Panel.AddView(img,0,h,bp.getWidth(img.Bitmap),bp.getHeight(img.Bitmap))
h= h + bp.getHeight(img.Bitmap) + 5%y
sh=sh+bp.getHeight(img.Bitmap)
ScrollView1.Panel.Height=sh
End If
ScrollView1.Panel.Height=ScrollView1.Panel.Height+10%y
Next
End Sub

Sub Namayesh(Position As String) As Bitmap
Dim cur As Cursor
cur=s.ExecQuery("SELECT Value FROM Tbl")
cur.Position=Position

Dim bytes() As Byte
bytes=cur.GetBlob("Value")

Dim input As InputStream
input.InitializeFromBytesArray(bytes,0,bytes.Length)

Dim b As Bitmap
b.Initialize2(input)
input.Close
Return(b)
End Sub

دیتابیس هم دو تا ردیف داره یکی type و یکی value وقتی type=0 باشه مقدارم متن هست و وقتی که مساوی با یک هست مقدارم عکسه لطفا سریع پاسخ بدید بسیار ممنون

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

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

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

سلام

یه عکس از رکوزد های دیتابیس قرار بدید

برای سوال اول باید Gravity ویوی img رو Fill بگذارید :

img.Gravity = Gravity.FILL

و در این قسمت :

ScrollView1.Panel.AddView(img,0,h,bp.getWidth(img.Bitmap),bp.getHeight(img.Bitmap))

به این شکل تغییر بدید :

ScrollView1.Panel.AddView(img,0,h,َActivity.Width,bp.getHeight(img.Bitmap))
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

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

سلام این قسمت

Dim img As ImageView
img.Initialize("")
img.Bitmap=Namayesh(i)
Dim bp As BitmapExtended
bp.Initialize("")
ScrollView1.Panel.AddView(img,0,h,bp.getWidth(img.Bitmap),bp.getHeight(img.Bitmap))
h= h + bp.getHeight(img.Bitmap) + 5%y
sh=sh+bp.getHeight(img.Bitmap)
ScrollView1.Panel.Height=sh
End If
ScrollView1.Panel.Height=ScrollView1.Panel.Height+10%y
Next

وبا این عوض کن

    Dim img As ImageView
    img.Initialize("")
    img.Bitmap=Namayesh(i)
    Dim bp As BitmapExtended
    bp.Initialize("")
    ScrollView1.Panel.AddView(img,0,h,100%x,100%y)
    img.Left=50%x-img.Width/2
    h= h + bp.getHeight(img.Bitmap) + 50%y
    sh=sh+bp.getHeight(img.Bitmap)
    ScrollView1.Panel.Height=h
    End If
    Next

شاید درشبیه ساز یه مقدار متن وعکس از هم فاصله داشته باشه اما تو گوشی در ست نشون داده میشه

 

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

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

با این کار متن ها میاد روی عکس ها روی گوشی من (lg g2) که اینطوری هست فک کنم با این روش تو گوشی های مختلف به هم می ریزه متن و عکس راهی نداری که متن رو هم جوری تنظیم کنیم که مثل عکس ثابت باشه و مثلا میان دو عکس نمایش پیدا کنه؟فرد دیگه ای هست بتونه کمک کنه؟

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

گذاشتم البته مشکل دیگه ای که با کد شما و کد خودم دارم (با کد دوستمون نه) اینه که دو تا رکورد آخر نصفه کاره نمایش داده می شه اگه هر دوتاش حل بشه می خوام برنامه رو بفرسم برا بازار لطف کنید زود پاسخ بدید ممنون

post-3189-0-08030000-1438592167_thumb.png

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

با این کار متن ها میاد روی عکس ها روی گوشی من (lg g2) که اینطوری هست فک کنم با این روش تو گوشی های مختلف به هم می ریزه متن و عکس راهی نداری که متن رو هم جوری تنظیم کنیم که مثل عکس ثابت باشه و مثلا میان دو عکس نمایش پیدا کنه؟فرد دیگه ای هست بتونه کمک کنه؟

   

img.Left=50%x-img.Width/2
    h= h + bp.getHeight(img.Bitmap) + 50%y

دوست عزیز شما در اون کدهایی که بهتون دادم میتونید کنترلش کنید (با کدهای بالا) ویا اینکه با کد پاینی میتونی اندازه عکسهاتو مشخص کنی

ScrollView1.Panel.AddView(img,500dip,h,500dip,812)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

   

img.Left=50%x-img.Width/2
    h= h + bp.getHeight(img.Bitmap) + 50%y

دوست عزیز شما در اون کدهایی که بهتون دادم میتونید کنترلش کنید (با کدهای بالا) ویا اینکه با کد پاینی میتونی اندازه عکسهاتو مشخص کنی

ScrollView1.Panel.AddView(img,500dip,h,500dip,812)

قربونت فعلا که مشکل حل شد

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

بایگانی شده

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

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

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