md98

توسعه دهنده اندروید
  • تعداد ارسال ها

    65
  • تاریخ عضویت

  • آخرین بازدید

  • Days Won

    1

md98 last won the day on فوریه 8

md98 had the most liked content!

اعتبار در انجمن

4 Neutral

درباره md98

  • درجه
    توسعه دهنده فعال
  1. ViewGroup textviewPage = (ViewGroup) getLayoutInflater().inflate(R.layout.fragment_screen_slide_page, (ViewGroup) getWindow().getDecorView().findViewById(android.R.id.content), false); TextView contentTextView = (TextView) textviewPage.findViewById(R.id.content_book_txt); float horizontalMargin = getResources().getDimension(R.dimen.activity_horizontal_margin) * 2; float verticalMargin = getResources().getDimension(R.dimen.activity_vertical_margin) * 2; // obtaining screen dimensions Display display = getWindowManager().getDefaultDisplay(); int screenWidth = (int) (display.getWidth() - horizontalMargin); int screenHeight = display.getHeight(); Toast.makeText(ScreenSlidePagerActivity.this, screenWidth+" "+screenHeight, Toast.LENGTH_SHORT).show(); TextPaint paint = contentTextView.getPaint(); //=========================================================== //Working Out How Many Lines Can Be Entered In The Screen Paint.FontMetrics fm = paint.getFontMetrics(); float fullHeight = fm.top - fm.bottom; fullHeight = Math.abs(fullHeight); //=========================================================== int numChars = 0; int lineCount = 0; int maxLineCount = (int) ((screenHeight - (/*actionBarHeight + */ verticalMargin)) / fullHeight); //contentTextView.setLines(maxLineCount); // contentString is the whole string of the book while (body != null && body.length() != 0) { while ((lineCount < maxLineCount) && (numChars < body.length())) { numChars = numChars + paint.breakText(body.substring(numChars), true, screenWidth, null); lineCount++; } // retrieve the String to be displayed in the current textbox String toBeDisplayed = body.substring(0, numChars); int nextIndex = numChars; char nextChar = nextIndex < body.length() ? body.charAt(nextIndex) : ' '; if (!Character.isWhitespace(nextChar)) { toBeDisplayed = toBeDisplayed.substring(0, toBeDisplayed.lastIndexOf(" ")); } numChars = toBeDisplayed.length(); body = body.substring(numChars); pageContents.add(toBeDisplayed.trim()); numChars = 0; lineCount = 0; totalPages++; } در اين قطعه كد هم سايز صفحه گرفته شده و هم سايز متن و هم تعداد كاراكتر در هر صفحه با توجه به اينكه ما فونت و ديگر تنظيمات آن رو هم داريم و امكان تغيير آن ها هم است. حالا ميخواهم آن را بهينه كنم
  2. دوستان، در سایت stackoverflow این مورد رو جستجو کردم باز هم به نتیجه ای نرسیدم جز این مورد:http://stackoverflow.com/questions/15877042/how-i-can-show-a-long-textviewstring-into-multiple-page-of-android#new-answerاگه از دوستان کسی میدونه چطور این کد رو باید بهینه کرد، ممنون میشم کمک کنه
  3. از sdcard توسط يك فايل json لود ميشه. منتها من همين پروژه اي رو هم كه ارسال كردم با متون طولاني مشكل داره و طول ميكشه! راهكاري مدنظرتون هست؟
  4. دوستان کسی نبود ی نگاهی به این سورس کد بندازه و بهینه ش کنه؟
  5. با سلام؛ دوستان در مورد نمايش صفحه به صفحه اطلاعات، سوالي پرسيده بودم كه متاسفانه پاسخي دريافت نكردم (به غير از چند پاسخي كه دوست خوبمان آقاي سرسيفي عزيز دادند) لطفا در پرسش و پاسخ ها شركت كنيد تا اطلاعاتي كه داريم رو با همديگه به اشتراك بذاريم اما در مورد اين مبحث من قطعه كدي رو در اين خصوص يافتم كه گفتم شايد خالي از لطف نباشه كه به اشتراكش بذارم AndroidReader-master.zip اما يك مشكل كوچيكي كه داره دير لود شدن متون طولاني است اگه از دوستان كسي ميدونه مشكل از كجاست بگن تا اين كد بيشتر مورد استفاده كاربران قرار بگيره با سپاس از همه دوستاني كه مشاركت ميكنند
  6. با سلام از اين قطعه كد جوابي نگرفتم. خيلي متوجه اعدادي كه توي textWidth ميداد، نشدم! منتها در پيوست چيزي كه ميخوام رو سعي كردم در قالب تصوير هم براتون ي توضيحي بدم
  7. از دوستان كسي نيست با viewpager كار كرده باشه؟ لطفا اگه كسي كار كرده ي راهنمايي در اين زمينه بكنه (صفحه به صفحه نمايش اطلاعات) ممنون ميشم
  8. با سلام با ديباگ متوجه نشدم كه كجا مشكل داره و همچنين از sharePrefrences استفاده كردم اون هم جواب نداد چ كار بايد كرد؟
  9. با سلام مجدد شاید سوالمو بد مطرح کردم من می خوام بدونم مثلا در یک دیوایس 480*720 پیکسل چند کلمه میتونه در یک textview بصورت match_parent (تمام صفحه) درج بشه؟ اون قسمت دوم هم که مطرح کردم در خصوص طول و عرض، گفتم شاید بکار بیاد و بشه ازش در اینباره استفاده کرد.
  10. با سلام خدمت برنامه نویسان اندروید یک سوال از دوستان داشتم: کسی میدونه تعداد کاراکتری رو که در یک صفحه به textview ست میشه رو چطور بدست آورد؟ برای بدست آوردن طول و عرض یک صفحه به پیکسل از قطعه کد زیر استفاده میشه Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); int width = size.x; int height = size.y; اگه دوستان محاسبه اونرو میدونه لطفا بگه باتشکر
  11. تشکر از توجه فرزاد جان من از viewPager برای صفحه به صفحه کردن استفاده کردم اینم لینکش https://developer.android.com/training/animation/screen-slide.html#pagetransformer فقط یک مشکل خیلی کوچیک دارم! اینکه من چطور می تونم stringی رو که دادم به تکست ویو در صفحات تقسیمش کنم؟ چون الان تمامی متن در یک صفحه به تعداد count نمایش داده میشه! * یک count میخواد از من که تعداد صفحات مشخص بشه!! و قطعه کدی که در فرگمنت آن زدم public class ScreenSlidePageFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { ViewGroup rootView = (ViewGroup) inflater.inflate( R.layout.fragment_screen_slide_page, container, false); txt=(TextView)rootView.findViewById(R.id.content_book_txt); String body = allBookIndex.getBody(); txt.setText(body); return rootView; } }
  12. قبلا هم اینکار رو کرده بودم الان هم انجام دادم نشد. چرا
  13. با سلام و تشکر از آقای سرسیفی بخاطر پاسخ های سریع و کاربردیتان در تصویر زمینه یک progressbar در متون استفاده شده که نمیدونم آیا کتابخانه آن موجود است یا ن؟! در صورت موجود بودن کتابخانه آن لطفا نام آن و یا آدرس لینک آن را برایم قرار دهید با تشکر فراوان
  14. با سلام اگه در کدی که قرار دادم دقت کرده باشید من کد رو درون یک متدی به نام DisplayBook قرار دادم کد زیر: public void DisplayBook() { DataSource dbsource = new DataSource(getActivity()); allBook = dbsource.DisplayBookinMain(); DisplayBook = new AdapterForMyBooks(getActivity(), R.layout.displaybookingrid, allBook); int mNoOfColumns = Utility.calculateNoOfColumns(getActivity()); recyclerView.setLayoutManager(new GridLayoutManager(getActivity(), mNoOfColumns)); recyclerView.setItemAnimator(new DefaultItemAnimator()); DisplayBook.notifyDataSetChanged(); recyclerView.setAdapter(DisplayBook); } و در اون هم از notifyDataSetChanged استفاده کردم ولی فایده ای نداره!
  15. درود و سپاس از آقای سرسیفی عزیز بسیار عالی است اگه گرافیکی ملموس تر و متریالی تر بخوام، موردی هست که معرفی کنید؟ (ترجیحا در محیط اندروید استودیو و کتابخانه های آماده)