我正在尝试使用ListView在其他小部件中实现活动.所以,如果我理解正确,我就不能使用ListActivity(因为它只显示了一个对我来说没问题的大型ListView).
我发现了许多不同的例子,在这样做,在这样
或
这个
或很好的例子的 SO .
我试图以同样的方式做,但它无法正常工作.我很好奇这个功能是否存在于单声道android中?
我发现只有一个在单声道android中使用ListView的例子就是 这个 ,这个例子描述了仅使用ListActivity.
那么,我的布局:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
android:id="@+id/widget36"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical">
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</ListView>
</TableLayout>
Run Code Online (Sandbox Code Playgroud)
我的OnCreate:
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.CreateUser);
JavaList<string> somadata = new JavaList<string> { "111", "222", "333" };
ListView view = FindViewById<ListView>(Resource.Id.list);
view.Adapter = new ArrayAdapter<string>(this, Resource.Layout.CreateUser, somadata);
view.TextFilterEnabled = true;
}
Run Code Online (Sandbox Code Playgroud) 我使用WebBrowser Silverlight 4控件来加载一些页面:
<WebBrowser Height="350" Name="webBrowser" Width="400" />
...
webBrowser.Navigate(new Uri("http://mail.live.com"));
Run Code Online (Sandbox Code Playgroud)
但页面加载水平和垂直滚动条.所以我试图找到一些方法来获取加载页面的实际大小(然后我可以更改控件的高度/宽度)或更改加载页面的比例(以适应实际的WebControl控件).是否可以使用标准的WebControl方法?
在我的WCF项目中,我需要在响应中使用自定义标头,因此我实现了IDispatchMessageInspector.老实说,一切都很好,但我对一件小事情感到不安.
问题是即使我只是将.svc作为页面打开,或者将服务加载到WCF测试客户端,BeforeSendReply和AfterReceiveRequest都会触发.
所以,第一个问题:这种行为是正常的吗?有没有办法以声明方式处理(可能是一些web.config技巧)?
目前我使用下一个代码:
public void BeforeSendReply(ref Message reply, object correlationState)
{
if (reply.Properties.Any(x => x.Key == "httpResponse"))
return;
MessageHeader header = MessageHeader.CreateHeader("Success", "NS", !reply.IsFault);
reply.Headers.Add(header);
}
Run Code Online (Sandbox Code Playgroud)
所以现在我通过使用它来处理所有不是服务调用的调用:
if (reply.Properties.Any(x => x.Key == "httpResponse"))
return;
Run Code Online (Sandbox Code Playgroud)
但我很确定还有其他一些更好的方法可以解决这个问题.所以我的主要问题是:请建议我一个更好的方法来处理描述的情况.
提前致谢!
更新1
我的system.serviceModel部分
<system.serviceModel>
<services>
<service behaviorConfiguration="someBehavior" name="serviceName">
<endpoint address="" binding="basicHttpBinding" contract="my contract" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="someBehavior">
<serviceMetadata httpGetEnabled="true" httpGetUrl=""/>
<serviceDebug includeExceptionDetailInFaults="false"/>
<exceptionInspector/>
</behavior>
</serviceBehaviors>
</behaviors>
<extensions>
<behaviorExtensions>
<add name="exceptionInspector" type="class which …
Run Code Online (Sandbox Code Playgroud) 是否有一些支持单声道 android 应用程序的单元测试框架?我已经尝试过默认的 Visual Studio 测试框架和 NUnit 框架,但没有任何运气。
我的最后一次尝试:我创建了 Mono Android 类库,引用 nunit.framework,编写了测试。但是当我尝试启动它们时,我遇到了异常:
System.TypeLoadException: Could not load type 'System.Runtime.Versioning.TargetFrameworkAttribute' from assembly 'mscorlib, Version=2.0.0.0'
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at NUnit.Core.TestRunner.Load(TestPackage package)
at NUnit.Util.TestDomain.Load(TestPackage package)
at NUnit.Util.TestLoader.LoadTest(String testName)
Run Code Online (Sandbox Code Playgroud)
我确定这是因为单声道 android 程序集与其他程序集不兼容......
所以我的问题是:如何让它工作?或者也许还有其他一些用于单声道 android 应用程序的单元测试框架?
UPD:此问题的解决方法。
因为我只需要测试平台无关的模型,所以我刚刚创建了单独的“代理”Windows 类库项目,并向其中添加了来自我的 Mono for Android 类库的模型类的链接(项目 => 添加现有项目... => [选择所有应作为链接添加的文件] => 添加为链接)。
所以我收到了与任何由应测试的类组成的单元测试框架程序集的兼容。
在我的asp mvc应用程序中,我使用标准客户端验证(DataAnnotations + MicrosoftAjax.js + MicrosoftMvcValidation.js).我需要在成功/不成功的客户端验证后显示一些弹出消息(jGrowl)(因此我不能使用ModelState.IsValid).所以我搜索一些标准的标志,指示客户端验证状态.有人知道吗?它存在吗?