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

گرد کردن ایمیج ویو


Mohammad.1379

سوال

سلام 

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

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

این کار چطور امکان پذیره؟

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

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

ممنوم بابت پاسخو گویی

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

cur1 = sql.ExecQuery("SELECT id,name,ax FROM tabel1")
   For i=0 To cur1.RowCount-1
   	cur1.Position = i
	
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0%x,stop,100%x,100%y)
	p.LoadLayout("l3")
	Label2.Text = cur1.GetString("name")
	stop = stop + 19.5%y
	Button1.Tag = cur1.GetInt("id")
	ScrollView1.Panel.Height = stop
   ImageView1.Bitmap = namayesh(i)
   Next

sub namayesh(Position As String) As Bitmap

cur1 = sql.ExecQuery("SELECT id,name,ax FROM tabel1")
cur1.Position = Position
Dim Bytes() As Byte
Bytes = cur1.GetBlob("ax")

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

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

اگه میشه با این کد ها راهنمایی کنید

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

در واقع شما توی برنامه از یک ImageView کردید که به مراتب تکرار شده. اون ایمیج ویو ImageView1 هستش که هر کاری میخواید بکنید، باید روی همین ایمیج ویو انجام بدید. 

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

در 3 دقیقه قبل، مهدی کفشگر گفته است :

در واقع شما توی برنامه از یک ImageView کردید که به مراتب تکرار شده. اون ایمیج ویو ImageView1 هستش که هر کاری میخواید بکنید، باید روی همین ایمیج ویو انجام بدید. 

اینو که من همون اول گفتم پیشنهاد شما چیه

الان چی کار کنم خب؟

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

@Mohammad.1379 پیشنهادی که براتون دارم اینه که ایمیج ویو رو داخل یک پنل قرار بدید و از داخل دیزاینر گوشه های پنل رو گرد کنین از قسمت panel properties بخش corner radius اگه اشتباه ننوشته باشم

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

در 2 ساعت قبل، محمد رشوند گفته است :

@Mohammad.1379 پیشنهادی که براتون دارم اینه که ایمیج ویو رو داخل یک پنل قرار بدید و از داخل دیزاینر گوشه های پنل رو گرد کنین از قسمت panel properties بخش corner radius اگه اشتباه ننوشته باشم

اتفاقا همین کار رو هم کردم

 

ولی موقع نمایش فقط پنل گرد میشن و ایمیج ویو مربع میمونه و از پنل میزنه بیرون

 

اصولا نباید اینطور بشه

 

ولی میشه این خودش یه باگه برای بیسیک

 

 

روش دیگه ای ندارید؟

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

@Mohammad.1379 روش دیگه ای که سراغ دارم اینکه که شما یه تصویر مربعی شکل png داخل فتو شاپ همرنگ با پس زمینه اکتیوتیتون میسازید

بعد یه دایره خالی ایجاد میکنید وسط اون مربع حالا به صورت png ذخیره کنید عکسو

بعدش باید این تصویر png رو داخل یک ایمیج ویو لود کنید از داخل دیزاینر حالا شما دوتا ایمیج ویو دارید یک ایمیج ویو که مربوط به عکس پست هر ایتم هستش یک ایمیج ویو هم اینی که ساختید

حالا همینی که تو فتوشاب ساختید و اد کردید تو دیزاینر بیاریدش روی ایمیج ویویی که مربوط به پستاتون هستش برای اینکه بیارید روی ایمیج ویو کافیه از دیزاینر به بخش views tree برید و ویو مورد نظر رو درگ اند دراپ کنید بالای ویوی ایمیج پستاتون

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

در 40 دقیقه قبل، devil_v9 گفته است :

دوست من بهترین روش استفاده از کتابخانه MSCircularImageView می باشد.

ایشون میخوان ایمیج ویو گرد نمایش داده بشه نه اینکه بیت مپ رو دایره ای شکل نمایش پیدا کنه

اگر قرار بر استفاده از کتابخونه باشه که کلاس photoshop اریا لیب از کتابخونه MSCircularImageView خیلی بهتره چون با یک خط کد کارو راه میندازه

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

در 20 ساعت قبل، محمد رشوند گفته است :

ایشون میخوان ایمیج ویو گرد نمایش داده بشه نه اینکه بیت مپ رو دایره ای شکل نمایش پیدا کنه

اگر قرار بر استفاده از کتابخونه باشه که کلاس photoshop اریا لیب از کتابخونه MSCircularImageView خیلی بهتره چون با یک خط کد کارو راه میندازه

دوست عزیز مشکلی که ایشون داره با کتابخونه  MSCircularImageView  حل میشه این کتابخونه همون ImageView هست با این تفاوت که به حالت گرد شده نشون میده و دیگه نیازی نیست عکساشو یکی یکی گرد کنه تو فتوشاپ . امیدوارم متوجه منظورم شده باشی ! عکس از دیتابیس یا هر جایی دیگه میتونه به کنترل داده شود/.

d83l_1.png

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

در 20 ساعت قبل، محمد رشوند گفته است :

ایشون میخوان ایمیج ویو گرد نمایش داده بشه نه اینکه بیت مپ رو دایره ای شکل نمایش پیدا کنه

اگر قرار بر استفاده از کتابخونه باشه که کلاس photoshop اریا لیب از کتابخونه MSCircularImageView خیلی بهتره چون با یک خط کد کارو راه میندازه

بلد نیستم کار با این کتابخونرو 

 

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

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

در 10 دقیقه قبل، Mohammad.1379 گفته است :

بلد نیستم کار با این کتابخونرو 

 

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

در 10 دقیقه قبل، Mohammad.1379 گفته است :

ببین دوست من در خط سوم جایی که شی CircularImageView قرار میگیره جایی که imageView شما قرار داره پس دیگه نگران جایی که بروی اکتیویتی قرار میگیره نباشید.

نقل قول

 


Dim imgavatar As CircularImageView
imgavatar.Initialize("S")
Activity.AddView(imgavatar,ImageView1.Left,ImageView1.Top,ImageView1.Width,ImageView1.Height) 
imgavatar.SetDrawable(LoadBitmap(File.DirAssets,"1.png"))

 

 

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

در 21 دقیقه قبل، devil_v9 گفته است :

imgavatar.SetDrawable(LoadBitmap(File.DirAssets,"1.png"))

شما تو این خط به کتابخونه خود ایمیج ویو رو ندادی اومدید فقط ادرس و نام عکس رو بهش دادید

ایشون میخواستن که ایمیج ویو گرد نمایش داده بشه

بنده هم بالاتر گفتم که اگر قرار بر استفاده از کتابخونه MSCircularImageView  باشه کتابخانه آریا لیب با یک خط کد اینکارو تمیز انجام میده

	Dim img As ImageView
	
	Dim aph As AriaPhotoshp : aph.Initialize("aph") : img.Bitmap = aph.GetCircleBitmap(File.Combine(File.DirAssets,"1.png"))
	
	

 

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

در در 1396/02/22, 12:19:23، Mohammad.1379 گفته است :

سلام 

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

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

این کار چطور امکان پذیره؟

سلام.

من هم دقیقاً مشکل دوستمون را دارم با این تفاوت که عکسهای من از سرور لود میشه و داخل ایمیج ویو قرار میگیره و می خوام اونا را بصورت دایره نمایش بدم.برای لود عکسهام هم از کتابخانه پیکاسو استفاده کردم.لطفاً راهنمایی کنید.ممنون

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

در 11 دقیقه قبل، Amir1356 گفته است :

سلام.

من هم دقیقاً مشکل دوستمون را دارم با این تفاوت که عکسهای من از سرور لود میشه و داخل ایمیج ویو قرار میگیره و می خوام اونا را بصورت دایره نمایش بدم.برای لود عکسهام هم از کتابخانه پیکاسو استفاده کردم.لطفاً راهنمایی کنید.ممنون

 

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

در 36 دقیقه قبل، محمد رشوند گفته است :

 

ایشون میخواستن که ایمیج ویو گرد نمایش داده بشه

منم بهش یه ImageView گرد معرفی کردم دیگه :دی

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

در 39 دقیقه قبل، محمد رشوند گفته است :

شما تو این خط به کتابخونه خود ایمیج ویو رو ندادی اومدید فقط ادرس و نام عکس رو بهش دادید

ایشون میخواستن که ایمیج ویو گرد نمایش داده بشه

بنده هم بالاتر گفتم که اگر قرار بر استفاده از کتابخونه MSCircularImageView  باشه کتابخانه آریا لیب با یک خط کد اینکارو تمیز انجام میده


	Dim img As ImageView
	
	Dim aph As AriaPhotoshp : aph.Initialize("aph") : img.Bitmap = aph.GetCircleBitmap(File.Combine(File.DirAssets,"1.png"))
	
	

 

من به جای 1.png چی باید بزارم چون یه عکس مشخص نیست که من دارم از دیتا بیس فرا خوانی می کنم صد عکس مختلف رو

 

 

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

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

Sub CircleImage(Image As Bitmap) As Bitmap
	Dim bmp As Bitmap
	bmp.InitializeMutable(200dip, 200dip)
	
	Dim cvs As Canvas
	cvs.Initialize2(bmp)
	
	Dim r As Rect
	r.Initialize(0, 0, bmp.Width, bmp.Height)
	cvs.DrawRect(r, Colors.Transparent, True, 0)
	
	Dim p As Path
	p.Initialize(0, 0)
	Dim jo As JavaObject = p
	Dim x = 100dip, y = 100dip, radius = 100dip As Float
	jo.RunMethod("addCircle", Array As Object(x, y, radius, "CW"))
	cvs.ClipPath(p)
	
	Dim r2 As Rect
	r2.Initialize(0, 0, cvs.Bitmap.Width, cvs.Bitmap.Height)
	cvs.DrawBitmap(Image, Null, r2)
	
	Return cvs.Bitmap
End Sub

 

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

در 11 دقیقه قبل، Mohammad.1379 گفته است :

من به جای 1.png چی باید بزارم چون یه عکس مشخص نیست که من دارم از دیتا بیس فرا خوانی می کنم صد عکس مختلف رو

 

 

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

	Dim aph As AriaPhotoshp : aph.Initialize("aph")
	
	cur1 = sql.ExecQuery("SELECT id,name,ax FROM tabel1")
   For i=0 To cur1.RowCount-1
   	cur1.Position = i
	
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0%x,stop,100%x,100%y)
	p.LoadLayout("l3")
	Label2.Text = cur1.GetString("name")
	stop = stop + 19.5%y
	Button1.Tag = cur1.GetInt("id")
	ScrollView1.Panel.Height = stop
   ImageView1.Bitmap =  aph.GetCircleBitmap(namayesh(i))
	 
   Next

 

بفرمایید

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

بایگانی شده

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

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

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