Android面试题之解决篇

 

1.PendingIntent contentIntent = PendingIntent.getActivity(this, 0, intentCall, 0);

程序也没有报错,也没有什么反应。

答:需要在 Manifest 里面注册

<uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>

http://www.eoeandroid.com/viewthread.php?tid=1051&extra=page%3D2

 

2. 有两个类,第一个 extends Activity ,第二个 extends View 。

我把 onKeyDown 方法放在第一个里可以执行,放第二个里,就不能执行。

答:在继承自 view类中构造方法中加上这个setFocusable(true);

 

3.代码在什么地方去取USB键盘事件的呢?

答:你把那个Demo里的例子导进来看看,找到那个SoftKeyBoard类

   输入法相关类:InputMethodService

 

4. 关于 spinner在练习 spinner 时,有个下拉菜单样式的配置文件。

<?xml version="1.0" encoding="utf-8"?>

<TextView

xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/text1"

android:layout_width="wrap_content"

android:layout_height="24sp"

android:singleLine="true"

style="?android:attr/spinnerDropDownItemStyle"/>

singleLine 属性有什么用,设置成 false 后效果没什么改变,另外 style 属性有哪几种?不会只有

?android:attr/spinnerDropDownItemStyle

这一个值吧,顺便说下里面的那个?代表什么意思。

答:这里的 ? 代表使用一个 theme attr,

? android : attr/spinnerDropDownItemStyle

意思是说是用当前系统的 theme 属性 spinnerDropDownItemStyle

系统的属性很多,下面全都列出来了,包括什么情况下使用。但并非所有的属性都可以当作theme attr 来使用

http://developer.android.com/reference/android/R.attr.html

关于 style 和 theme 的使用,参考下面这个。

http://developer.android.com/guide/topics/resources/resources-i18n.html

 

5. 想在WebView中显示Sdcard的图片,下面的代码正确吗 mWebView.loadDataWithBaseURL("http://www.sina.com","<img src=/sdcard/a.jpg  />",  "text/html", "utf-8", "http://www.sina.com");

答:不能正确显示出图片,文件目录有问题

如:final String html = "<h1>Header</h1><p>Custom HTML</p>

                        <p><img src=\"file:///sdcard/image1.jpg\" />

                        </p>";

 

6. 在程序中如何启动PDF阅读器打开PDF文件

假设手机中安装了PDF相关的阅读器,那又如何在一个程序中调用这个阅读器打开PDF文件呢!应该怎么实现了!

答:制定以下MIME类型,say,

Intent(URI,MIME);

MIME应该是类似doc/pdf之类的。这个是必须指定的。

 

7.AndroidManifest.xml中<activity android:name="ac01">与<activity android:name=".ac01">效果看上去好像一样,这个“。”到底有什么用?

答:“。”表示这个activity是你在manifest标签中声明的package 下。这样系统会自动到这个包下去找这个activity。

 

8.假设整个layout分成上下两个部分,按下这个按钮后,在按钮的下方显示调用的Activity,而不是切换手机屏幕界面?

答:先把两个Layout的xml文件写好,A.xml和B.xml。在主程序里面定义一个Layout,并用LayoutInflater将A.xml和B.xml解析为对应的Layout类型,然后使用addView()将解析的两个Layout添加到主程序里定义的那个Layout中去

参考《android36技》4.9节

 

9. 一个音乐播放器,写在一个service中,我想请问大家如何在来电话的时候暂停歌曲,电话结束后继续播放歌曲 这个功能怎么实现呢

答:receiver监听ACTION_PHONE_STATE_CHANGED消息 关键是要在音乐播放的service中新建这个receiver,然后使用代码注册。使用java的闭包的特性在receiver中调用service中暂停的方法。也就是这个reveiver是service的一个内部类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值