Jump to content
View in the app

A better way to browse. Learn more.

FGX Native

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[TfgCalendar] Падает приложение на Android версии 5.0

  • Status: Fixed
  • Priority: Minor
  • Resolution: Fixed
  • Platform: Android
  • Affects version 1.9.3.0
  • Fix version: 1.10.0.0

При отображении календаря на Android 5.0 (SDK 21) приложение падает с ошибкой.

 

Обойти можно так:

procedure TmwServiceAdd.fgFormShow(Sender: TObject);
begin
  inherited;
{$IFDEF ANDROID}
  if TJBuild_VERSION.SDK_INT <= 21 then
    cdService.ShowWeekCount := 6;
{$ENDIF}
end;

Stack trace прилагаю

 

SetupDiagResults.txt

User Feedback

Recommended Comments

  • Administrators

Судя по стек трейсу, проблема заключается в реализации календаря в самой системе Android. А именно по стек трейсу наблюдается ошибка деления на ноль в процессе выравнивания элементов календаря. Я вряд ли смогу ее поправить, так как ошибка именно в Андроиде. Но я могу предположить, что возможно она связана с тем, что размер календаря маленький. Я бы посоветовать попробовать увеличить размер календаря на форме. Возможно, это поможет решить проблему именно на вашей версии Андроида.

Javded

Members

Менять размер я пробовал, не помогло.

Я посмотрел, где происходит деление на 0.

            mHeight = (mListView.getHeight() - mListView.getPaddingTop() - mListView
                    .getPaddingBottom()) / mShownWeekCount;

Дело в количестве показываемых недель.

Присваивание происходит в конструкторе.

        mShownWeekCount = a.getInt(R.styleable.CalendarView_shownWeekCount,
                DEFAULT_SHOWN_WEEK_COUNT);

Константа описана так:
    private static final int DEFAULT_SHOWN_WEEK_COUNT = 6;

То есть почему-то onMeasure происходит до присваивания значения количества показываемых недель или DEFAULT_SHOWN_WEEK_COUNT вычисляется неверно.

  • Administrators

Значение Статус изменено на: Fixed

Значение Резолюция изменено на: Fixed

Значение Версия с исправлением изменено на: 1.9.5.0

Create an account or sign in to comment

Recently Browsing 0

  • No registered users viewing this page.

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.