我有一个带有“添加项目”按钮和一个列表视图的MainActivity类,以及一个带有文本框和“保存”按钮的AddItemActivity类。用户应单击“添加项目”,转到AddItemActivity屏幕,输入一个项目,单击“保存”,然后返回到更新的MainActivity屏幕。
(顺便说一句,我正在使用MonoDroid,但我认为这不是MonoDroid特定的问题)。
我的“添加项目”点击事件(在主要活动中):
private void addItemButton_Click(object sender, EventArgs e)
{
var intent = new Intent();
intent.SetClassName(this, "monoApp.AddItemClassName");
StartActivityForResult(intent, 0);
}
Run Code Online (Sandbox Code Playgroud)
我的“保存”点击事件(添加项目活动时):
private void saveButton_Click(object sender, EventArgs e)
{
var itemname = FindViewById<EditText>(Resource.id.itemName);
_repo.SaveItem(new Item() {Name = itemname.Text.ToString()});
Toast.MakeText(this, "You saved: " + itemname.Text, ToastLength.Short).Show();
var intent = new Intent();
SetResult(Result.Ok, intent);
Finish();
}
Run Code Online (Sandbox Code Playgroud)
然后回到主要活动:
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
RefreshTheList();
}
Run Code Online (Sandbox Code Playgroud)
第一次,这就像一种魅力。屏幕滑到“添加项目”,然后在完成时滑回到主屏幕。在第二次,它滑过,但随后滑回自己,如果让任何意义。然后,如果我再次点击保存,它将恢复正常。
如果视频有帮助,我已将所见内容的片段发布到TwitVid:http ://www.twitvid.com/W7XZC
基本上,我不希望它“滑回自身”,所以我在做什么错?
有没有办法为MonoDroid创建全局错误处理程序?我的调试器坏了所以我需要一种方法来查看应用程序崩溃时的异常信息.
我是Unity3d的新手,并试图打开一个现有的项目.播放时显示以下错误.
Assets/Scripts/DataAccess.cs(39,30):错误CS0117:System.IO.File' does not contain a definition for
AppendAllText'
我对如何解决这个问题一无所知.我被困在这里.
如果有人解决这个问题,那将是一种欣赏.
提前致谢...
我是Xamarin框架的新手,并为iOS和Droid共享应用程序开发应用程序.我只是想使用带有XAML的Masterdetailpage布局制作一个像Facebook应用程序一样的左滑块菜单.我找不到合适的例子或存根来开发结构编程.这将是很好的帮助如果有人可以建议我从现在开始我的当前项目的链接或示例代码片段?预先感谢.
我在android支持设计库中遇到了Snackbar的问题.奇怪的是,它只发生在我在调试模式下运行我的应用程序时,在发布模式下它完全可以正常工作.
有没有人对这个问题有所了解?它似乎是支持库中的一个错误.
码
using (var snackbar = Snackbar.Make(View, "Nieuwe order aangemaakt", Snackbar.LengthLong).SetAction("OK", v => { }))
snackbar.Show();
Run Code Online (Sandbox Code Playgroud)
例外
07-06 11:47:50.414 I/MonoDroid(13296):Java.Lang.ClassCastException:抛出了类型'Java.Lang.ClassCastException'的异常.07-06 11:47:50.414 I/MonoDroid(13296):at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()07-06 11:47:50.414 I/MonoDroid(13296):at OverAllField.XamarinAndroid.Fragments.Planning .PlanningFragment.FloatingActionButton_Click(object,System.EventArgs)[0x00001]在c:\ Development\Apps\FieldService-Tablet\OverAllF07-06 11:47:50.414 I/MonoDroid(13296):at Android.Runtime.JNIEnv.CallStaticObjectMethod( intptr,intptr,Android.Runtime.JValue*)[0x00064] /Users/builder/data/lanes/1502/24855232/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:1301 07 -06 11:47:50.414 I/MonoDroid(13296):在Android.Support.Design.Widget.Snackbar.Make(Android.Views.View,Java.Lang.ICharSequence,int)07-06 11:47:50.414 I/MonoDroid(13296):在Android.Support.Design.Widget.Snackbar.Make(Android.Views.View,string,int)07-06 11:47:50.414 I/MonoDroid(13296):at OverAllField.XamarinAndroid.Fragments c:\ De中的.Planning.PlanningFragment.FloatingActionButton_Click(object,System.EventArgs)[0x00001] velopment\Apps\FieldService-Tablet\OverAllField.XamarinAndroid\OverAllField.Android\Fragments\Planning\PlanningFragment.cs:74 07-06 11:47:50.414 I/MonoDroid(13296):at Android.Views.View/IOnClickListenerImplementor.OnClick (Android.Views.View)[0x0000d]在/Users/builder/data/lanes/1502/24855232/source/monodroid/src/Mono.Android/platforms/android-21/src/generated/Android.Views.View中. cs:1923 07-06 11:47:50.414 I/MonoDroid(13296):在/ Users/builder/data/lanes/1502 /中的Android.Views.View/IOnClickListenerInvoker.n_OnClick_Landroid_view_View_(intptr,intptr,intptr)[0x00011] 24855232/source/monodroid/src/Mono.Android/platforms/android-21/src/generated/Android.Views.View.cs:1888 07-06 11:47:50.414 I/MonoDroid(13296):at(包装动态) -method)object.84d16582-f149-4133-af10-0f21d61ca331(intptr,intptr,intptr)07-06 11:47:50.414 I/MonoDroid(13296):---托管异常堆栈跟踪结束--- 07- 06 11:47:50.414 I/MonoDroid(13296):java.lang.ClassCastException:android.widget.LinearLayout canno t被转换为android.support.design.widget.Snackbar $ SnackbarLayout 07-06 11:47:50.414 I/MonoDroid(13296):在android.support.design.widget.Snackbar.(Snackbar.java:119)07- 06 11:47:50.414 I/MonoDroid(13296):在android.support.design.widget.Snackbar.make(Snackbar.java:140)07-06 11:47:50.414 I/MonoDroid(13296):单声道. …
classcastexception xamarin.android snackbar android-snackbar androiddesignsupport
我是一名C#开发人员,负责为我们的一个项目开发Android本机应用程序的项目,其C#中的逻辑引擎作为REST服务公开.当前项目有一个使用Html5和JS的Web版本以及使用WPF的桌面.我们有很好的Html5,Angular JS开发人员可供我们使用,现在经过一些研究来了解我需要做什么才能开始,以下是我的理解:
学习Java / Python
本机Android开发,它与其他选项有一些学习曲线
使用类似的框架Cordova, Titanium
,它们能够将HTML5,JS代码转换为原生Android和IOS应用程序
现在我遇到了Xamarin,它可以帮助C#开发人员开发我们可以快速采用的Android和IOS应用程序,但是我无法找到令人信服的答案,这些问题基于我对复杂性的理解.项目要求,因为它们在一段时间内发生变化:
任何建议/指针都会很棒,这可以帮助我们做出明智的决定.不希望继续使用框架,而不了解可能使未来变得困难的主要限制或障碍
我正在开发Visual Studio中的Android应用程序.在Android SDK管理器中,安装了从API级别23(Android 6.0)到API级别25(Android 7.1)的所有API.
但是当我在Visual Studio中打开项目属性时,"使用Android版编译"选项仅显示apis直到23(Android 6.0).我希望以7.1为目标,因为大多数智能手机现在都拥有它.
如果我使用Android 6.0,还有另一个问题.某些软件包如Xamarin.Firebase.Messaging无法安装,但出现以下错误.
Install-Package: Could not install package 'Xamarin.Firebase.Messaging 42.1001.0'.
You are trying to install this package into a
project that targets 'MonoAndroid,Version=v6.0', but the package does not contain
any assembly references or content files that are
compatible with that framework. For more information, contact the package author.
Run Code Online (Sandbox Code Playgroud)
我可以看到API级别25下的所有可用选项都安装在SDK管理器中.请帮助我,以便我可以从Visual Studio Android应用程序中定位Android 7.1.谢谢
我已经创建了Xamarin Forms项目,但无法将Android状态栏颜色更改为透明。我正在MainActivity的OnCreate()方法中以编程方式更改颜色,如下所示:
if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
{
Window.ClearFlags(WindowManagerFlags.TranslucentStatus);
Window.AddFlags(WindowManagerFlags.DrawsSystemBarBackgrounds);
Window.SetStatusBarColor(Color.Transparent);
}
Run Code Online (Sandbox Code Playgroud)
我尝试了不同的颜色,但效果很好,但是“透明”根本不起作用。我正在对API 22进行测试。
我的style.xml如下:
<style name="MainTheme.Base" parent="Theme.AppCompat.Light.NoActionBar">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="colorPrimary">@color/blue</item>
<item name="colorPrimaryDark">@color/blue</item>
<item name="colorAccent">#FF4081</item>
<item name="windowActionModeOverlay">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
Run Code Online (Sandbox Code Playgroud)
例如,如果我以编程方式将我的颜色设置为Purple,它将正常工作,但是如果将其设置为Transparent,我将得到蓝色的style.xml颜色。如果删除style.xml ColorPrimaryDark颜色,则会显示灰色状态栏。有什么解决方案?
我的目标是android 4.4并且正在启动这样的服务
start.Click += delegate {
StartService(new Intent("com.xamarin.LocationService"));
start.Enabled = false;
stop.Enabled = true;
};
Run Code Online (Sandbox Code Playgroud)
这一切都很好.现在我的目标是6.0,并从这个线程中发现这不安全,我应该这样做:
Intent serviceIntent = new Intent(context,MyService.class);
context.startService(serviceIntent);
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚'新Intent()'的论据应该是什么.类名是'LocationActivity'但是如果我这样做的话
serviceIntent = new Intent(this, typeof(LocationActivity));
context.startService(serviceIntent);
Run Code Online (Sandbox Code Playgroud)
它编译好,但服务实际上没有启动.
该线程中的明确答案也表明了这一点
Intent bi = new Intent("com.android.vending.billing.InAppBillingService.BIND");
bi.setPackage("com.android.vending");
Run Code Online (Sandbox Code Playgroud)
但如果我尝试,我发现'Intent不包含setPackage的定义'.
那么,有人可以帮我解决这个问题吗?提前致谢.
xamarin.android ×10
xamarin ×5
android ×4
c# ×3
cordova ×1
java ×1
monodevelop ×1
snackbar ×1
xamarin.ios ×1