我在Android.App中找不到找到FragmentPagerAdapter.
我不想使用Android.Support.V4.App中的Fragment,因为我的目标API是14及更高版本(Android 4.0及更高版本).所以,我想使用Android.App.Fragments的平原,以及相关的类.
我只在Android.Support.V4.App中找到它,但这对我来说不够b/c我正在尝试使用Android.App.Fragment(而不是Android.Support.V4.App.Fragment)并且那里Android.App(不是Android.Support.V4.App)中的相关类,如果我从FragmentPagerAdapter派生我的寻呼机(如果它来自支持库),我的代码将无法编译,因为Android.App和Android.Support之间的类型不匹配.V4.App.
就像这里的情况一样无法强制转换为android.app.Fragment,是否有一个"普通"的寻呼机(PagerAdapter)类我应该用它代替FragmentPagerAdapter或其他东西(就像你从普通的Activity派生而来,而不是FragmentActivity,在针对API 11或更高版本时).
下面是我正在使用的示例代码(它来自于https://github.com/xamarin/monodroid-samples/tree/master/Support4上的MonoDroid示例的Support4.sln解决方案中的FragmentPagerSupport.cs文件).
我已经注释掉引用Android.Support.V4.App的行,并用引用Android.App的代码替换它们.我找不到Android.Support.V4.App之外没有FramePagerAdapter,我真的需要它.
谢谢.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
//using Android.Support.V4.App;
//using Android.Support.V4.View;
namespace Support4
{
[Activity (Label = "@string/fragment_pager_support")]
[IntentFilter (new[]{Intent.ActionMain}, Categories = new[]{ "mono.support4demo.sample" })]
//public class FragmentPagerSupport : FragmentActivity
public class FragmentPagerSupport : Activity
{
const int NUM_ITEMS = 10;
MyAdapter adapter;
ViewPager pager;
protected override void OnCreate (Bundle bundle)
{ …
Run Code Online (Sandbox Code Playgroud) android xamarin.android android-fragments fragmentpageradapter
我在Windows 10上安装了android studio 1.5.
当我输入命令行时:
亚行
我找不到命令.
我在哪里可以获得它或安装在哪里?
我试图TextView
在用户触摸它时更改Android 小部件的背景颜色.我已经为此创建了一个选择器,它存储在res/color/selector.xml
大致看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:color="@color/semitransparent_white"
/>
<item
android:color="@color/transparent"
/>
</selector>
Run Code Online (Sandbox Code Playgroud)
在clickable
该属性TextView
就是true
那的利益,以备不时之需.
当我将此选择器分配给TextView
as时android:background="@color/selector"
,我在运行时遇到以下异常:
ERROR/AndroidRuntime(13130):引起:org.xmlpull.v1.XmlPullParserException:二进制XML文件行#6:标记需要一个'drawable'属性或定义drawable的子标记
当我将属性更改为drawable时,它可以工作,但结果看起来完全错误,因为ID似乎被解释为图像引用而不是颜色引用(如"drawable"所示).
令我困惑的是,我可以直接设置颜色参考,例如"@ color/black"作为背景属性.这是按预期工作的.使用选择器不起作用.
我也可以使用选择器作为textColor
没有问题.
TextView
在Android中应用背景颜色选择器的正确方法是什么?
在Android中支持不同的屏幕尺寸(密度)时,通常关注的是为每个可能的屏幕创建不同的布局.IE
我为xhdpi屏幕设计了一个布局作为参考,并在dimens.xml中定义了它的尺寸.现在我想支持每个可能的屏幕尺寸.我怎样才能做到这一点?
据我所知,我可以使用此工具找出适合其他屏幕尺寸的dimens.xml并将其添加到我的项目中.这是在我的情况下这样做的正确方法吗?
另一个问题,我是否只需要为上面的屏幕尺寸创建dimens.xml?如果是,那么是什么w820dp
?
谢谢你的帮助.我只需要支持手机(不是平板电脑或其他设备).
android android-layout android-screen-support android-activity
我试图让a的背景DialogFragment
完全清楚.
通过将样式项设置android:windowIsFloating
为true(默认值),可以DialogFragment
显示我想要的样式,但背景非常暗淡.
通过设置android:windowIsFloating
为false,我得到了我想要的清晰背景,但DialogFragment可以吹到屏幕的大约95%,只留下一个小小的间隙,你可以看到它覆盖的视图.
我已经尝试了大量的调整,似乎无法覆盖这种行为.
我是否需要使用a PopupWindow
来实现所需的效果,或者是否有一些我可以覆盖的样式项?
这是一个非常简单的问题,我仍然非常不安:
为什么现在广泛接受类通过访问器方法返回对其私有成员的引用?这不完全打破封装原则吗?如果这样可以,那为什么不公开会员!?
public class EncapsulationViolator
{
private object abuseMe;
public object AbuseMe
{
get { return abuseMe; }
}
}
Run Code Online (Sandbox Code Playgroud)
编辑我正在考虑的案例就是这个
EncapsulationViolator ev = new EncapsulationViolator();
object o = ev.AbuseMe;
o.SetValue(newValue);
Run Code Online (Sandbox Code Playgroud)
现在,ev的状态已经通过传递性而发生变化,因为其成员滥用状态已发生变化.
在DDD的上下文中,如果对象是聚合根,则不行.我引用
允许外部对象仅保留对根的引用.可以传递对内部成员的瞬时引用,以便仅在单个操作中使用.因为根控制访问权限,所以不能通过对内部的更改来愚蠢.
[ 领域驱动设计,Eric Evans]
... setters schmetters ......
为什么C#编译器不允许泛型集合中的多态类型(T)参数(即List [T])?
以"A"和"B"为例,其中"B"是"A"的子类
class A { }
class B : A { }
Run Code Online (Sandbox Code Playgroud)
并考虑一个带有'A'类型列表的函数
void f(List<A> aL) { }
Run Code Online (Sandbox Code Playgroud)
用"B"类型的列表调用
List<B> bL = new List<B>();
f(bL);
Run Code Online (Sandbox Code Playgroud)
给出以下错误
ERROR: cannot convert from List<B> to List<A>
Run Code Online (Sandbox Code Playgroud)
违反了什么语义规则?
除此之外,还有一个"优雅"的意思,除了循环和铸造每个元素(我想要一些糖)?谢谢.
我现在正处于跨平台移动应用程序开发的一个非常关键的交叉路上,并且可以真正使用一些专业知识(如woah).
给予一定的上下文(可以回答我希望帮助),我开发基于方便,花花公子MonoCross框架.NET移动应用,使用VS2010U(不MonoDevelop的,然而,这是IOS).第一个目标平台是Android,然后是IOS和Windows Phone"端口"(如果我做对了,那就不是真的).
现在我已经奠定了坚实的基础,包括业务逻辑,数据访问层,数据库,REST Web服务等,我正在经历并试图在一些错误处理中工作,但我不确定这是什么最好的方法是.
我被告知try-catch块可能是性能命中(在这种情况下这是一个大问题),
这是真的吗?我应该使用它们谨慎,或者只是一巴掌EM地方的异常可能会被抛出(我还挺想用他们在我所有的SQLite的API调用,因为我不知道他们在做什么赫克一半的时间做).
使用事件回调是错误处理的坏事吗?我被告知只要有可能使用这些,而不是的try-catch,出于性能的原因,但我不想破坏任何设计原则和范例,并与马虎,gauh-loppy码所有的地方结束.
第三个选项,具有最小的开销,但处理起来极其烦人,是状态字段和返回值.
那你觉得怎么样?我想我正在寻找一些大方向,也许还有一些关于何时何地使用每种方法的建议,以及我最有可能遗漏的任何其他技术.如果需要更多细节,请告诉我,因为我很乐意给他们.
感谢您抽出宝贵时间!
在从客户端方法getRecords调用ReadToEnd方法期间,我得到一个对象处理异常,该方法使用StreamReader与Web服务器通信.
对getRecords的第一次调用成功,只是在后续调用期间发生异常,因此我没有正确关闭和处理StreamReader和关联的WebRequest.
我知道我可以将这两个对象包装在using语句中,但是它只是扩展为try/catch/finally语句.从我下面的代码中可以看出,我正在清理我的finally子句.
因此,我要么不做使用声明所做的事情,要么在我的最终声明中还有其他一些我可能遗漏的东西.如果可能的话,我宁愿不使用using语句,因为我喜欢我的代码显式.
这是代码和相关的异常:
public int getRecords(string[] args, string[] vals)
{
List<string> urlList = BuildUrlRequestStrings(args, vals);
WebRequest request = null;
WebResponse wresponse = null;
StreamReader sr = null;
foreach (string url in urlList)
{
request = WebRequest.Create(url);
request.Method = "GET";
request.ContentType = "application/json";
//request.Timeout = -1;
request.Timeout = 300000;
request.Credentials = CredentialCache.DefaultCredentials;
//request.ContentType = "application/xml";
try
{
wresponse = request.GetResponse();
/*using (StreamReader sr = new StreamReader(wresponse.GetResponseStream()))
{
_recieveBuffer = sr.ReadToEnd().ToString();
}*/
sr = new StreamReader(wresponse.GetResponseStream());
_recieveBuffer = …
Run Code Online (Sandbox Code Playgroud) 我正在尝试确定哪个是原生Android开发的最佳/首选/推荐的linux发行版?
我现在正在研究Ubuntu,但我也在考虑使用CentOS(我一直很喜欢RedHat).
我想在最低限度,操作系统需要
在工作中,我使用单声道和视觉工作室在Windows上开发,但现在我已经在我的点燃火上加载了4.2.2,我真的想开始做一些原生Android的东西(这有望帮助我的Monodroid调试技能).
更新:让它成为Kindle Fire HD 8.9,因为我的电池开始变得如此轻微(我早早抓住它,它变得更糟),推开侧边几毫米,亚马逊正在发送一个升级的替代品.
谢谢.
android ×5
c# ×4
.net ×2
adb ×1
background ×1
eclipse ×1
generics ×1
java ×1
linux ×1
oop ×1
web-services ×1
windows-10 ×1