小编mar*_*ark的帖子

检查设备是否有摄像头?

在我的应用程序中,如果设备有相机,我想使用相机.有没有运行Android的设备没有摄像头?通过在我的清单中包含以下内容:

<uses-feature android:name="android.hardware.camera" android:required="false"/>
Run Code Online (Sandbox Code Playgroud)

然后它基本上说"我会使用相机,如果存在,但不需要一个运行应用程序".

在尝试使用Camera类之前,如何检查设备上是否存在相机?

android android-camera

78
推荐指数
6
解决办法
5万
查看次数

以编程方式创建TableLayout

我正在尝试以编程方式创建TableLayout.它不会起作用.然而,xml文件中的相同布局有效.这就是我所拥有的:

public class MyTable extends TableLayout
{
    public MyTable(Context context) {
        super(context);

        setLayoutParams(new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
        TableRow row = new TableRow(context);
        row.setLayoutParams(new TableRow.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

        Button b = new Button(getContext());
        b.setText("hello");
        b.setLayoutParams(new LayoutParams(TableRow.LayoutParams.FILL_PARENT, TableRow.LayoutParams.WRAP_CONTENT));
        row.addView(b); 
        addView(row)
    }
}

...

// In main activity:
MyTable table = new MyTable(this);
mainLayout.addView(table);
Run Code Online (Sandbox Code Playgroud)

当我运行它时,我没有崩溃,但没有出现.如果我摆脱TableRow实例,至少该按钮确实显示为TableLayout的直接子项.我究竟做错了什么?

android tablelayout

25
推荐指数
2
解决办法
5万
查看次数

在apache中设置基本Web代理

我希望运行Apache作为Web开发的代理.我正在运行已安装并运行Apache 2.2.8的Mac OS X 10.5.4.

我想将我的JavaScript文件(在我的机器上本地运行)指向:

http://localhost/test.php
Run Code Online (Sandbox Code Playgroud)

这会打到本地apache服务器,然后将该apache实例转发到我真正的远程服务器:

http://www.mysite.com/test.php
Run Code Online (Sandbox Code Playgroud)

我看了几个演练,但它们似乎已经过时了.我想知道是否有最近如何设置它 - 这里的文档:

http://httpd.apache.org/docs/2.0/mod/mod_proxy.html

给出了一个基本的例子,但我不确定应该在哪里添加文本 - 到http.conf?我只是将其添加到那里,然后重新启动服务器?

谢谢

apache proxy

22
推荐指数
1
解决办法
7万
查看次数

首次安装在设备上时,活动历史记录堆栈错误

编辑/更新:

作为对以下问题的更新,我找到了导致它发生的确切操作.

  1. 通过Android浏览器从url下载apk
  2. 安装应用程序.
  3. 安装后,该应用程序为您提供了两个选择:"打开"或"完成".
  4. 如果选择"打开",则开始下面描述的古怪行为.
  5. 如果您选择"完成",然后从应用程序托盘启动应用程序,它可以正常工作.

所以看起来这个问题是由安装APK后浏览器提供的"打开"按钮引起的.


首次安装时,我在应用程序的历史堆栈中遇到错误.我做了一个测试应用来证明这一点.

测试应用程序只是两个活动,A和B.活动A启动B.这就是它的全部功能.Rest是来自eclipse的向导生成的模板代码.

当用户安装应用程序(通过web url apk),并且一次运行它时,我得到一个无序的活动堆栈:

- 用户启动应用程序,A位于顶部.
- 通过单击按钮使A启动B. B位于堆栈顶部.
- 用户点击主屏幕按钮.
-User返回应用程序,显示A而不是B.
-User点击后退键,显示B!
- 用户再次击中后退键,显示A!
- 用户再次点击后退键,显示主屏幕.
- 现在堆栈是干净的,应用程序从现在起"正常"运行!

还有其他人看到这个吗?这几乎就像这个已知的bug,但我的用户不是从eclipse安装的:http://code.google.com/p/android/issues/detail?id = 2337&q = first%20%20i ...

如果有人想尝试,我可以提供测试应用程序/源代码.这是清单,它没有任何特殊的自定义.

<activity android:name=".ActivityA"
          android:label="ActivityA"
  >
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>

<activity android:name="ActivityB"
          android:label="ActivityB"
  >
  <intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
  </intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)

据我所知,这肯定不会发生,并且在你第一次清除历史堆栈后工作正常.

谢谢

android

7
推荐指数
0
解决办法
625
查看次数

标签 统计

android ×3

android-camera ×1

apache ×1

proxy ×1

tablelayout ×1