前言
写在前面:首先是不一次性放出来的原因:资料来之不易,希望大家好好珍惜,每天花一段时间细细的消化这些题目,其次希望大家在阅读题目的时候最好跟着书或者代码一起阅读、一起敲,做到熟稔于心,信手拈来,这样面试的时候才能展现你最自信的一面。
121、Android中的下标和上标字符串
答案:
((TextView)findViewById(R.id.text)).setText(Html.fromHtml("X<sup>2</sup>"));
122、Android Studio找不到Aapt
答案:
Aapt是一个32位应用程序。我正在运行ubuntu 64位。我需要一些其他库。我所做的第一件事是从12.10更新到13.04。它破坏了铬,但这应该有所帮助。
为了使aapt正常工作(这也解决了我在avd上的问题),只需运行以下两个命令:
sudo apt-get install lib32stdc++6
sudo apt-get install lib32z1
123、从Android发送JSON HTTP POST请求
答案:
使用POST发布参数:
URL url;
URLConnection urlConn;
DataOutputStream printout;
DataInputStream input;
url = new URL (getCodeBase().toString() + "env.tcgi");
urlConn = url.openConnection();
urlConn.setDoInput (true);
urlConn.setDoOutput (true);
urlConn.setUseCaches (false);
urlConn.setRequestProperty("Content-Type","application/json");
urlConn.setRequestProperty("Host", "android.schoolportal.gr");
urlConn.connect();
//Create JSONObject here
JSONObject jsonParam = new JSONObject();
jsonParam.put("ID", "25");
jsonParam.put("description", "Real");
jsonParam.put("enable", "true");
你错过的部分在以下内容中,即如下。
// Send POST output.
printout = new DataOutputStream(urlConn.getOutputStream ());
printout.writeBytes(URLEncoder.encode(jsonParam.toString(),"UTF-8"));
printout.flush ();
printout.close ();
其余的事情你都可以做到。
124、我们可以通过打开下载文件夹吗?意图?
答案:
您可以使用以下内容显示最近的下载活动 Intent
startActivity(new Intent(DownloadManager.ACTION_VIEW_DOWNLOADS));
自API 9起可用
125、如何在Android Lollipop上声明扩展高度的工具栏/操作栏?
答案:
您需要使用新的工具栏小部件来实现此目的。工具栏具有特殊的处理方式,因为它声明了用于按钮(和操作)的空间的最小高度。
在下面的示例中,我们将高度设置为128dp(规范中定义为56dp + 72dp),但将其保留android:minHeight
为标准值actionBarSize
(通常为56dp)。这意味着按钮和动作被限制为垂直放置在顶部56dp中。然后,我们可以使用android:gravity将标题放置在底部。
<Toolbar
android:id="@+id/toolbar"
android:layout_height="128dp"
android:layout_width="match_parent"
android:minHeight="?android:attr/actionBarSize"
android:background="?android:attr/colorPrimary"
android:gravity="bottom" />
如果您使用的是AppCompat,请更改声明以改为使用android.support.v7.widget.Toolbar
并使用其属性。
126、如何使用可用的隐藏API和内部API构建Android SDK?
答案:
我找到了这个:http : //skillsmatter.com/podcast/os-mobile-server/hidden-api dunno它将持续多长时间
Android SDK中的官方API通常对于大多数普通应用程序就足够了。但是,有时在某些情况下,开发人员需要访问未在官方API中发布的内部系统服务,API和资源。幸运的是,这些API仍然可以通过一些巧妙的技巧获得,并且在基于Android的基础上开发新的创新解决方案时通常非常有用。在本课程中,您将学习如何访问和使用这些隐藏和受保护的API,它们的使用限制以及如何在多个供应商的设备和Android版本之间以安全和可控制的方式使用它们的一些技巧。观众将看到几个通常无法使用Android进行的高级演示。期待一个相当高级的会议,其中包含有关Android平台内部知识的大量见解。
127、Android Studio Google JAR文件导致GC开销限制超出错误
答案:
认为有一种单独的方法可以提高Dexing操作的堆限制。将此添加到文件的android闭包中build.gradle:
dexOptions {
javaMaxHeapSize "4g"
}
128、Android下载二进制文件问题
答案:
我不知道这是否是唯一的问题,但是你在其中遇到了典型的Java故障:你没有指望总是允许read()返回的字节数少于你要求的字节数。因此,你的读取可能会少于1024个字节,但是你的写入操作始终会精确地写出1024个字节,其中可能包括上一个循环迭代中的字节。
更正为:
while ( (len1 = in.read(buffer)) > 0 ) {
f.write(buffer,0, len1);
}
也许更高的延迟网络或Android上3G的较小数据包大小加剧了这种影响?
129、Android中项目上的自定义ListView点击问题
答案:
问题是Android不允许你选择列表元素上具有可聚焦元素的列表项。我修改了列表项上的复选框,使其具有如下所示的属性:
android:focusable="false"
现在,我的包含复选框的列表项(也适用于按钮)在传统意义上是“可选的”(它们亮起,你可以单击列表项中的任何位置,并且将触发“ onListItemClick”处理程序,等等)。
编辑:作为一个更新,一个评论者提到“只是一个注释,在更改按钮的可见性之后,我不得不再次以编程方式禁用焦点。”