我大约一周进入Xamarin,对于在按钮内加载图标的可能性有疑问。
我想实现类似的东西: https://jsfiddle.net/mr8fwtcv/
我试图用FontAwesome实现这种效果,但是设置动画有问题,所以在解决方案中使用Activity Indicator也不错。
我的按钮位于Stack Layout内,这是代码:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
我一直在寻找一些插件/解决方案,但无法找到任何插件/解决方案。 提前谢谢。
答案 0 :(得分:5)
您必须使用布局才能拥有多个控件。如果你不是在寻找CustomRenderers,那么你可以做的就是拥有一个RelativeLayout,并且在Button和Activity Indicator里面。您还必须为按钮文本编写一个转换器,当IsBusy为true时,该文本将文本设置为string.Empty。
例如:
<StackLayout>
<ActivityIndicator IsVisible="{Binding IsBusy}" IsRunning="{Binding IsBusy}" />
<Button Text="{Binding ButtonText, Converter={StaticResource ButtonTextConverter}, ConverterParameter={Binding IsBusy} />
</StackLayout>
此外,如果您计划在多个位置使用此功能,则可以将其创建为自定义控件。
您可以查看自定义控制代码here。
完整项目可用here。