Как скрыть нижнюю полосу в таблетках в .net maui 8?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как скрыть нижнюю полосу в таблетках в .net maui 8?

Сообщение Anonymous »

На самом деле мне нужно скрыть нижние вкладки при каком-то условии.
Я попробовал использовать TabbedViewHandler и Reflection, чтобы скрыть вкладки, установив для высоты нижней панели LayoutParameters значение 0. Вкладки не видны, но в пространстве вкладок появляется пустое место. Я также попробовал установить для видимости нижнего бара значение «Пропущено», но пустое пространство все равно появляется. Любая помощь будет высоко оценена.
public static PropertyMapper BottomBarMapper = new(Mapper)
{
[nameof(BaseBottomBarTabbedPage.IsBottomBarVisible)] = IsBottomBarVisibleOrNot
};

private static void IsBottomBarVisibleOrNot(CustomTabbedPageHandler handler, BottomBarTabbedPage baseBottomBarTabbedPage)
{
try
{
if (handler != null && handler.PlatformView != null && baseBottomBarTabbedPage != null)
{
var context = Microsoft.Maui.ApplicationModel.Platform.CurrentActivity.ApplicationContext;
var flags = System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.NonPublic;
Type tabbedPageType = typeof(Microsoft.Maui.Controls.TabbedPage);
var tabManager = tabbedPageType.GetField("_tabbedPageManager", flags)?.GetValue(baseBottomBarTabbedPage);
var bottomNavigation = tabManager.GetType().GetField("_bottomNavigationView", flags)?.GetValue(tabManager);
if (bottomNavigation is Google.Android.Material.BottomNavigation.BottomNavigationView bottomBar)
{
var parameters = bottomBar.LayoutParameters;
int resourceId = context.Resources.GetIdentifier("design_bottom_navigation_height", "dimen", context.PackageName);
if (resourceId > 0)
{
bottomBarHeight = context.Resources.GetDimensionPixelSize(resourceId);
}
if (parameters != null)
{
parameters.Height = baseBottomBarTabbedPage.IsBottomBarVisible ? bottomBarHeight : 0;
bottomBar.LayoutParameters = parameters;
}
}
}
}
catch (Exception ex)
{
Crashes.TrackError(ex);
}
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... net-maui-8
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»