2022年最新版Android安卓面试题+答案精选(每日20题,持续更新中)【七】

前言

写在前面:首先是不一次性放出来的原因:资料来之不易,希望大家好好珍惜,每天花一段时间细细的消化这些题目,其次希望大家在阅读题目的时候最好跟着书或者代码一起阅读、一起敲,做到熟稔于心,信手拈来,这样面试的时候才能展现你最自信的一面。

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”处理程序,等等)。

编辑:作为一个更新,一个评论者提到“只是一个注释,在更改按钮的可见性之后,我不得不再次以编程方式禁用焦点。”

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值