rasool.g 135 ارسال شده در 28 مهر، ۱۳۹۶ اشتراک گذاری ارسال شده در 28 مهر، ۱۳۹۶ سلام. عبارت هایی مثل عبارت زیر رو نمیشه به خوبی نمایش داد. "cpu چیست؟" از اون جایی که متن با حرف انگلیسی شروع شده . جهت متن (textDirection) چپ به راست انتخاب میشه و نیاز هست که جهت متن مثلا برای لیبیل راست به چپ انتخاب بشه. چجوری میشه این مشکل رو حل کرد؟ پروزه چند نکته : 1 - خود متن کاملا درست و استاندارده و تست شده 2 - gravity این مشکل رو حل نمیکنه و تست شده لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 29 مهر، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ کسی تا الان به چنین مشکلی بر نخورده؟ همین عبارت رو اگه تو یه لیبل یا msgbox نمایش بدید . میبینید چجوری میشه بهم میریزه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
arastooms 1,046 ارسال شده در 29 مهر، ۱۳۹۶ اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ من قبلا این مشکل رو داشتم که دوستان راهنمایی فرمودند و حل شد به سادگی براتون سرچ کردم " چپچین راسچین" و تو نتایج جستجو پیدا شد سرچ کنید سریع تر به جواب میرسید تا تاپیک بزنید و منتظر باشید دوستان جواب بدن موفق باشید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 29 مهر، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ در 2 ساعت قبل، arastooms گفته است : من قبلا این مشکل رو داشتم که دوستان راهنمایی فرمودند و حل شد به سادگی براتون سرچ کردم " چپچین راسچین" و تو نتایج جستجو پیدا شد سرچ کنید سریع تر به جواب میرسید تا تاپیک بزنید و منتظر باشید دوستان جواب بدن موفق باشید ممنون ولی gravity این مشکل رو حل نمیکنه من خودمم همیشه اول سرچ میکنم. چیزی یافت نشد البته gravity تا جایی که من میدونم معادل text-align در html هستش و به direction و rtl و ltr زیاد ربطی نداره. Label8.Gravity = Gravity.RIGHT Label1.Gravity = Bit.Or(Gravity.CENTER_VERTICAL, Gravity.RIGHT) این دو کد هم که یکیه ! (دومی فقط ار بالا به پایین متن رو وسط قرار میده). چجوری مشکلتون حل شد؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 29 مهر، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ دوستان معادل این کد ها در b4a چیه ظاهرا راه حل استفاده از این کد هاست android:textDirection="rtl" android:textDirection="anyRtl" textview.setTextDirection(View.TEXT_DIRECTION_RTL); textview.setTextDirection(View.TEXT_DIRECTION_ANY_RTL); لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,583 ارسال شده در 29 مهر، ۱۳۹۶ اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ با جاوا باید این کار رو بکنید عزیز. این متد رو به اکتیوتی اضافه کنید. #If java import android.view.View; import android.widget.TextView; public void setDirection(View label) { ((TextView)label).setTextDirection(View.TEXT_DIRECTION_ANY_RTL); } #End If کتابخونه جاوا آبجکت و متد زیر دیگه... Dim j As JavaObject j.InitializeContext.RunMethod("setDirection",Array As Object(Label1)) لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 29 مهر، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 29 مهر، ۱۳۹۶ در 27 دقیقه قبل، محمدرضا شاهپیری گفته است : با جاوا باید این کار رو بکنید عزیز. این متد رو به اکتیوتی اضافه کنید. #If java import android.view.View; import android.widget.TextView; public void setDirection(View label) { ((TextView)label).setTextDirection(View.TEXT_DIRECTION_ANY_RTL); } #End If کتابخونه جاوا آبجکت و متد زیر دیگه... Dim j As JavaObject j.InitializeContext.RunMethod("setDirection",Array As Object(Label1)) ممنون جناب شاهپیری کد در زیر هم اگه اشتباه نکنم مربوط به فایل ها و کد های xml میشه؟ همینطوره؟ android:textDirection="rtl" روش دیگه ای هم البته برای حل این مشکل پیدا کردم. این روش هم جواب میده. استفاده از کاراکتر های مخصوص Bi-directional text s = Chr(0x202B) & s & Chr(0x202C) RLE - Right-to-Left Embedding - U+202B PDF - Pop Directional Format - U+202C لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 30 مهر، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 30 مهر، ۱۳۹۶ در در 1396/07/29, 14:20:35، محمدرضا شاهپیری گفته است : با جاوا باید این کار رو بکنید عزیز. این متد رو به اکتیوتی اضافه کنید. #If java import android.view.View; import android.widget.TextView; public void setDirection(View label) { ((TextView)label).setTextDirection(View.TEXT_DIRECTION_ANY_RTL); } #End If کتابخونه جاوا آبجکت و متد زیر دیگه... Dim j As JavaObject j.InitializeContext.RunMethod("setDirection",Array As Object(Label1)) سلام جناب شاهپیری . من این کد رو هر چی تست میکنم جواب نمیده. بی زحمت ببینید کدهای زیر مشکلی داره؟ Sub Globals Private Label1 As Label Private Button1 As Button End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Layout1") Dim s As String = File.GetText(File.DirAssets,"1.txt") Label1.Text = s Label1.Gravity = Gravity.RIGHT Dim j As JavaObject j.InitializeContext.RunMethod("setDirection",Array As Object(Label1)) End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub #If java import android.view.View; import android.widget.TextView; public void setDirection(View label) { ((TextView)label).setTextDirection(View.TEXT_DIRECTION_RTL); } #End If Sub Button1_Click ToastMessageShow("---",False) Dim j As JavaObject j.InitializeContext.RunMethod("setDirection",Array As Object(Label1)) End Sub هر دو تا گزینه ی زیر رو هم امتحان کردم. طبیعتا باید جواب بده. ولی جهت متن تغییری نمیکنه textview.setTextDirection(View.TEXT_DIRECTION_RTL); textview.setTextDirection(View.TEXT_DIRECTION_ANY_RTL); لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,583 ارسال شده در 1 آبان، ۱۳۹۶ اشتراک گذاری ارسال شده در 1 آبان، ۱۳۹۶ این متدها جواب نمیده متاسفانه. توی اندروید استودیو هم تست کردم فایده نداشت. تنها راهش که من به ذهنم میرسه به صورت زیره. اول متد زیر رو اضافه کنید. این متد متن رو به rtl تبدیل میکنه #If java import android.text.Html; import android.text.Spanned; @SuppressWarnings("deprecation") public String fromHtml(String string){ Spanned result; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { result = Html.fromHtml("‫"+string,Html.FROM_HTML_MODE_LEGACY); } else { result = Html.fromHtml("‫"+string); } return result.toString(); } #End If بعد هم به صورت زیر متن رو به لیبل بدید Dim jo As JavaObject Dim str As String=jo.InitializeContext.RunMethod("fromHtml",Array As String("cpu چیست؟")) Label1.Text=str لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 1 آبان، ۱۳۹۶ سازنده اشتراک گذاری ارسال شده در 1 آبان، ۱۳۹۶ در 17 ساعت قبل، محمدرضا شاهپیری گفته است : این متدها جواب نمیده متاسفانه. توی اندروید استودیو هم تست کردم فایده نداشت. تنها راهش که من به ذهنم میرسه به صورت زیره. اول متد زیر رو اضافه کنید. این متد متن رو به rtl تبدیل میکنه #If java import android.text.Html; import android.text.Spanned; @SuppressWarnings("deprecation") public String fromHtml(String string){ Spanned result; if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) { result = Html.fromHtml("‫"+string,Html.FROM_HTML_MODE_LEGACY); } else { result = Html.fromHtml("‫"+string); } return result.toString(); } #End If بعد هم به صورت زیر متن رو به لیبل بدید Dim jo As JavaObject Dim str As String=jo.InitializeContext.RunMethod("fromHtml",Array As String("cpu چیست؟")) Label1.Text=str سلام. من از معادل یونیکد کارکتر های html ای که استفاده کردید، استفاده کردم. این کد هم جواب داد. s = Chr(0x202B) & s & Chr(0x202C) لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
rasool.g 135
سلام. عبارت هایی مثل عبارت زیر رو نمیشه به خوبی نمایش داد.
"cpu چیست؟"
از اون جایی که متن با حرف انگلیسی شروع شده . جهت متن (textDirection) چپ به راست انتخاب میشه و نیاز هست که جهت متن مثلا برای لیبیل راست به چپ انتخاب بشه.
چجوری میشه این مشکل رو حل کرد؟
پروزه
چند نکته :
1 - خود متن کاملا درست و استاندارده و تست شده
2 - gravity این مشکل رو حل نمیکنه و تست شده
لینک ارسال
به اشتراک گذاری در سایت های دیگر
9 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.