Questions tagged «android»

Android是Google的移动操作系统,用于对数字设备(智能手机,平板电脑,汽车,电视,Wear,Glass和IoT)进行编程或开发。对于与Android相关的主题,请使用特定于Android的标签,例如android-intent,android-activity,android-adapter等。对于与开发或编程无关但与Android框架相关的问题,请使用以下链接:https:// android.stackexchange.com。


10
覆盖后退按钮以充当主页按钮
在按下后退按钮时,我希望我的应用程序进入停止状态,而不是进入销毁状态。 在Android 文档中,它指出: ...并非所有活动都具有按下BACK后会被销毁的行为。当用户开始在“音乐”应用程序中播放音乐,然后按BACK时,该应用程序将覆盖正常的后退行为,从而防止播放器活动被破坏,并继续播放音乐(即使其活动不再可见) 如何在自己的应用程序中复制此功能? 我认为肯定有三种可能性... 捕获后退按钮的按下(如下所示),然后调用home按钮调用的任何方法。 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { Log.d(this.getClass().getName(), "back button pressed"); } return super.onKeyDown(keyCode, event); } 捕获后退按钮按下,然后欺骗主页按钮。 捕获后退按钮的按下,然后启动主屏幕的活动,从而有效地将应用程序的活动置于停止状态。 编辑: 我知道有关服务,并且正在与此问题相关的应用程序中使用一种。该问题专门用于在按“后退”按钮时将“活动”置于停止状态而不是被破坏状态。

29
RecyclerView和java.lang.IndexOutOfBoundsException:检测到不一致。三星设备中无效的视图支架适配器positionViewHolder
我有一个回收站视图,该视图可以在除三星之外的所有设备上完美运行。在三星上,我得到了 java.lang.IndexOutOfBoundsException:检测到不一致。无效的视图支架适配器positionViewHolder 当我从另一个活动中返回带有回收者视图的片段时。 适配器代码: public class FeedRecyclerAdapter extends RecyclerView.Adapter<FeedRecyclerAdapter.MovieViewHolder> { public static final String getUserPhoto = APIConstants.BASE_URL + APIConstants.PICTURE_PATH_SMALL; Movie[] mMovies = null; Context mContext = null; Activity mActivity = null; LinearLayoutManager mManager = null; private Bus uiBus = null; int mCountOfLikes = 0; //Constructor public FeedRecyclerAdapter(Movie[] movies, Context context, …

5
Android自定义按钮;更改文字颜色
我制作了一个按钮,可以通过以下方式在不同状态下更改背景可绘制: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@drawable/btn_location_pressed" /> <!-- pressed --> <item android:state_focused="true" android:drawable="@drawable/btn_location_pressed"/> <!-- focused --> <item android:drawable="@drawable/btn_location"/> <!-- default --> 这里的问题是,我也尝试像对drawable一样更改textColor,但是我不能。我已经尝试过android:textColor和android:color,但是第一个不起作用,而秒改变了我的背景。 下一个代码是我的布局的一部分。关于文本颜色,它仅适用于正常状态的文本颜色,因此在按下时不会将其更改为白色 <Button android:id="@+id/location_name" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="5dp" android:background="@drawable/location" android:textSize="15sp" android:textColor="@color/location_color" android:textColorHighlight="#FFFFFF" /> 有人知道了吗?

13
如何让Android Service与Activity通信
我正在编写我的第一个Android应用程序,并试图使我了解服务和活动之间的通信。我有一个将在后台运行的服务,并执行一些gps和基于时间的日志记录。我将有一个活动,该活动将用于启动和停止服务。 因此,首先,我需要能够确定在启动活动时服务是否正在运行。这里还有其他问题,所以我想我可以弄清楚(但随时提供建议)。 我的真正问题是:如果活动正在运行且服务已启动,则我需要一种使服务向活动发送消息的方法。此时的简单字符串和整数-主要是状态消息。这些消息不会定期发生,因此,如果有其他方法,我认为轮询服务不是一个好方法。我仅在用户启动活动后才需要这种通信-我不想从服务中启动活动。换句话说,如果启动活动并且服务正在运行,那么当发生有趣的事情时,您将在活动UI中看到一些状态消息。如果您不启动活动,则不会看到这些消息(它们不是那么有趣)。 看来我应该能够确定Service是否正在运行,如果可以,则将Activity添加为侦听器。然后在“活动”暂停或停止时将“活动”作为侦听器删除。真的有可能吗?我能确定的唯一方法是让Activity实现Parcelable并构建一个AIDL文件,这样我就可以通过服务的远程接口传递它。但是,这似乎有点过分,而且我不知道Activity应该如何实现writeToParcel()/ readFromParcel()。 有没有更简单或更好的方法?谢谢你的帮助。 编辑: 对于以后对此感兴趣的任何人,都可从Google的示例代码中找到示例代码,该示例代码通过AIDL在以下示例目录中进行处理:/apis/app/RemoteService.java

18
使Android模拟器运行更快
Android模拟器有点呆板。对于某些设备,例如Motorola Droid和Nexus One,该应用程序在实际设备中的运行速度比仿真器要快。在测试游戏和视觉效果时,这是一个问题。 如何使模拟器尽可能快地运行?我一直在玩弄它的参数,但是还没有找到显示出明显改进的配置。


12
列出意图的所有附加功能
出于调试原因,我想列出一个Intent的所有其他内容(及其值)。现在,获取钥匙不是问题 Set<String> keys = intent.getExtras().keySet(); 但是获取键的值对我来说是一个,因为有些值是字符串,有些是布尔值...我如何才能在循环中获取这些值(遍历键)并将这些值写入日志文件?感谢您的提示!

23
如何在TextView BOLD上制作特定文本
我不知道如何使TextView上的特定文本变为粗体。 就像这样 txtResult.setText(id+" "+name); 我希望输出是这样的: 1111尼尔 id和name是我已经从数据库中检索值的变量,并且我想将其id设为粗体,但是只有id这样,name将不会受到影响,我也不知道如何执行此操作。

29
findViewByID返回null
首先:是的,我阅读了有关该主题的所有其他主题。不仅是这个网站上的网站...(您看到的,我有些沮丧) 它们中的大多数都带有建议,android:id而不是仅id在XML文件中使用。是的 我从其他人那里了解到,该方法与的View.findViewById工作原理有所不同Activity.findViewById。我也处理了。 在我的中location_layout.xml,我使用: <FrameLayout .... > <some.package.MyCustomView ... /> <LinearLayout ... > <TextView ... android:id="@+id/txtLat" /> ... </LinearLayout> </FrameLayout> 在我的活动中,我这样做: ... setContentView( R.layout.location_layout ); 在我的自定义视图类中: ... TextView tv = (TextView) findViewById( R.id.txtLat ); 返回null。这样做,我的活动效果很好。所以也许是由于Activity.findViewById和的View.findViewById差异。因此,我将传递给上下文的上下文存储在本地的海关视图构造函数中并尝试: ... TextView tv = (TextView) ((Activity) context).findViewById( R.id.txtLat ); 这也回来了null。 然后,我改变了我的自定义视图扩展ViewGroup,而不是View和改变location_layout.xml让TextView我的自定义视图的直接子,从而使View.findViewById应该工作的设想。惊喜:它什么都没解决。 那么,我到底在做什么错呢? 我将不胜感激。

27
在Android Studio中查看数据库文件的内容
自发布以来,我一直在使用Android Studio开发应用程序。 直到最近,一切都运转良好,我必须与数据库文件一起进行调试。由于我不知道如何直接查看数据库,因此在调试生成数据库文件时,必须将手机中的数据库文件导出到PC。 为此,我必须打开DDMS > File Explorer。打开DDMS后,必须重新连接USB,并且会丢失调试线程。检查数据库文件后,我必须关闭DDMS,然后再次重新连接USB以返回到调试模式。 太复杂了。是否有人在Android Studio中有更好的方法(我知道在Eclipse中更容易)?

20
开发Android应用程序的最佳IDE是什么?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我即将开始开发Android应用,并且需要获取IDE。Eclipse和android eclipse插件似乎是自然的选择。但是,我对intelliJ和re-shaper很熟悉,所以我更喜欢使用intelliJ。 有人使用过https://code.google.com/archive/p/idea-android/吗?这样好吗 我应该忍痛学习Eclipse吗?

7
WebView中的Android调用JavaScript函数
我正在尝试调用一些javascript函数,这些函数位于.NET中html运行的页面中android webview。代码尝试在下面执行的操作非常简单-从android应用程序中,调用javascript带有测试消息的函数,然后依次在android应用程序中调用java函数,该函数通过烤面包显示测试消息。 该javascript函数如下所示: function testEcho(message){ window.JSInterface.doEchoTest(message); } 从WebView,我尝试javascript了以下几种方法,但是没有运气: myWebView.loadUrl("javascript:testEcho(Hello World!)"); mWebView.loadUrl("javascript:(function () { " + "testEcho(Hello World!);" + "})()"); 我确实启用javascript了WebView myWebView.getSettings().setJavaScriptEnabled(true); // register class containing methods to be exposed to JavaScript myWebView.addJavascriptInterface(myJSInterface, "JSInterface"); 这是Java阶级 public class JSInterface{ private WebView mAppView; public JSInterface (WebView appView) { this.mAppView = appView; } public …

11
以编程方式设置TextView的样式
我正在尝试使用TextView具有以下样式的构造函数: TextView myText = new TextView(MyActivity.this, null, R.style.my_style); 但是,当我这样做时,文本视图似乎没有采用样式(我通过将样式设置在静态对象上来验证了样式)。 我也尝试过使用,myText.setTextAppearance(MyActivity.this, R.style.my_style)但它也不起作用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.