我是StackOverflow社区的新手! 我需要帮助解决Xamarin Forms中的android问题。确切地说......我和一些朋友一起尝试构建我们的第一个应用程序。我们选择(在我们的大学教授的帮助下)Xamarin为使用Xamarin Forms的两个系统进行Android和iOS的跨平台开发。我创建了应用程序的界面部分,现在我被困在一个有大墙的堡垒里。当我尝试添加标签页面功能栏的图标时,应用程序崩溃(Android),但在iOS中,问题不会出现......
我会尝试一些解决方案......比如:
NameApp.Droid中的-Render仅为android部分添加了不同的渲染器,但没有结果...... - 尝试另一种方法直接在.xaml文件中插入图标但没有结果...... - 尝试按照另一种方式修改“主题”部分的.axam文件 但没有结果......我想只在“主项目”中按时整合所有内容。我现在不想触摸“nameProject.Droid”或“nameProject.iOS”部分,但尝试在一次拍摄中(Andriod& iOS)。我在Android(è.é)中发现了一个不同的错误,但为此,我发疯了...... 但我需要修改“.Droid”没问题我接受了挑战!
这是我在标签页中添加图标的方式。假设我在“.Droid”和“.iOS:
中的”资源“中添加了所有内容 var MainPageTabbed = new MPageTabbed();
var Profile = new Profile();
var ListChat = new ListChat();
if (Device.RuntimePlatform == Device.Android)
{
MainPageTabbed.Icon = "ldpi.png";
Profile.Icon = "ldpi2.png";
Chat.Icon = "ldpi1.png";
}
if (Device.RuntimePlatform == Device.iOS)
{
MainPageTabbed.Icon = "ldpi.png";
Profile.Icon = "ldpi2.png";
ListChat.Icon = "ldpi1.png";
}
NavigationPage.SetHasNavigationBar(this, false);
Children.Add(MainPageTabbed);
Children.Add(Profile);
Children.Add(ListChat);
有人可以帮我找一个解决方案吗?
答案 0 :(得分:3)
这里有一个如何在xamarin表单中使用TabbedPage
的示例:
https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/navigation/tabbed-page/
... Xamarin.forms
将Android标签页面呈现为一个名为viewpager并与TabPagerStrib
结合的内容,它看起来像上面链接中的示例。
您可能会阅读有关Android的BottomNavigationBar
,或者查看此链接以查找包含图片的TabPagerStrip
:
https://forums.xamarin.com/discussion/39937/adding-icons-to-a-pagertabstrip-instead-of-text
答案 1 :(得分:1)
如果有人对FontAwesome自定义图标实现感兴趣,那么我将按照本教程开始:FontAwesome with Xamarin Forms
不幸的是,他没有提供与选项卡式页面集成的示例,但经过一些试验,我终于找到了一种简化的Xaml方式,无需定制的选项卡式渲染器即可进行渲染:
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:IBMobile.Views"
xmlns:local2="clr-namespace:FontAwesome"
x:Class="IBMobile.Views.HomePage"
Visual="Material">
<ContentPage.IconImageSource>
<FontImageSource FontFamily="{StaticResource FontAwesomeSolid}" Glyph="{x:Static local2:IconFont.Home}" />
</ContentPage.IconImageSource>