Questions tagged «android»

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

8
删除一个onclick监听器
我有一个文本在其中循环并显示状态消息的对象。消息更改时,我希望更改对象的click事件以将您带到消息所关联的活动。 因此,我有一个,TextView mTitleView并且正在分配这样的事件。 public void setOnTitleClickListener(OnClickListener listener) { mTitleView.setOnClickListener(listener); } 如何删除该点击事件?有些状态消息没有可操作的区域,因此我想关闭click事件。我还希望能够遍历这些单击事件并正确处理它们,但是我不确定最佳实践。

9
应用程序重启而不是重启
希望有人能帮助我找出(如果不是解决方案的话)至少是一种行为的解释。 问题: 在某些设备上,按下启动器图标会导致当前任务恢复,而在其他设备上,会导致触发初始启动意图(有效地重新启动应用程序)。为什么会这样? 细节: 当您按下“启动器图标”时,应用程序将正常启动-也就是说,我假设启动了一个Intent,其中包含您的第一个Activity操作android.intent.action.MAIN和类别的名称android.intent.category.LAUNCHER。但是,情况并非总是如此: 在大多数设备上,如果在应用程序已运行后按启动器图标,则将恢复该进程中当前正在运行的活动(不是 initial Activity)。它的恢复方式与从OS菜单的“近期任务”中选择它的方式相同。这是我想要在所有设备上的行为。 但是,在选定的其他设备上,会发生不同的行为: 在Motorola Xoom上,当您按启动器图标时,无论当前正在运行什么,该应用程序将始终启动初始启动Activity。我假设启动器图标始终启动“ LAUNCHER”意图。 在Samsung Tab 2上,当按启动器图标时,如果您刚刚安装了该应用程序,它将始终启动初始程序Activity(与Xoom相同)-但是,在安装后重新启动设备后,启动器图标将改为恢复应用程序。我假设这些设备在设备启动时将“已安装的应用程序”添加到查找表中,从而允许启动器图标正确恢复正在运行的任务? 我读过很多回答的声音类似我的问题,但简单地添加android:alwaysRetainTaskState="true"或使用launchMode="singleTop"的Activity并不是答案。 编辑: 在此应用程序的最新启动后,我们发现在第一次重新启动后,所有设备上都开始出现此现象。这对我来说似乎很疯狂,但是在重新启动过程中,我实际上找不到问题所在。

18
片段onResume()和onPause()在后台程序中未调用
我在一个活动中有多个片段。在一个按钮上,单击“我正在开始一个新片段”,将其添加到Backstack中。我自然希望可以调用onPause()当前Fragment和onResume()new Fragment 的方法。好吧,这没有发生。 LoginFragment.java public class LoginFragment extends Fragment{ @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { final View view = inflater.inflate(R.layout.login_fragment, container, false); final FragmentManager mFragmentmanager = getFragmentManager(); Button btnHome = (Button)view.findViewById(R.id.home_btn); btnHome.setOnClickListener(new View.OnClickListener() { public void onClick(View view){ HomeFragment fragment = new HomeFragment(); FragmentTransaction ft2 = …

25
Android Facebook与无效密钥哈希的集成
在我的一个应用程序中,我需要从Facebook获取数据...我正在这样做: 我已经创建了应用ID。它成功登录,但是注销后,我登录,然后显示以下信息: 我在做什么错?我正在使用Facebook SDK ...已经在手机上安装了Facebook ...在模拟器中运行良好,但是没有安装内置的Facebook应用程序。 这是我的代码: if (FB_APP_ID == null) { Builder alertBuilder = new Builder(this); alertBuilder.setTitle("Warning"); alertBuilder.setMessage("A Facebook Applicaton ID must be " + "specified before running this example: see App.java"); alertBuilder.create().show(); } // Initialize the dispatcher Dispatcher dispatcher = new Dispatcher(this); dispatcher.addHandler("login", LoginHandler.class); dispatcher.addHandler("stream", StreamHandler.class); dispatcher.addHandler("logout", LogoutHandler.class); …
194 android  facebook 

7
如何在Kotlin Android中为数据类创建空的构造函数
我在一个数据类中有10个以上的参数,我想用一个空的构造函数初始化该数据类,并使用setter仅设置几个参数的值,然后将该对象传递给服务器。 data class Activity( var updated_on: String, var tags: List<String>, var description: String, var user_id: List<Int>, var status_id: Int, var title: String, var created_at: String, var data: HashMap<*, *>, var id: Int, var counts: LinkedTreeMap<*, *>, ) 用法: 这样的事情会很容易 val activity = Activity(); activity.title = "New Computer" sendToServer(activity) 但这要求在创建构造函数时传递所有参数。我如何像上面那样简化? val …
194 android  kotlin 

27
NoClassDefFoundError-Eclipse和Android
我在尝试运行一个Android应用程序时遇到问题,直到向其构建路径添加第二个外部库为止,它运行良好。由于添加了scoreninja jar,当我尝试运行应用程序时,现在出现了NoClassDefFoundError。 这是消息: 02-11 21:45:26.154: ERROR/AndroidRuntime(3654): java.lang.NoClassDefFoundError: com.scoreninja.adapter.ScoreNinjaAdapter 由于所有的构建脚本都是由Android工具生成的(?),所以我不确定除了清理,重建或重新启动Eclipse外我还能做些什么(我已经尝试了全部三个)。有人知道我该如何修改吗?
193 java  android  eclipse  ant  build 

10
Android API 21工具栏填充
如何摆脱Android SDK API版本21(支持库)在新工具栏中的多余填充? 我说的是这张图片上的红色箭头: 这是我正在使用的代码: <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:background="?attr/colorPrimary" android:padding="0dp" android:layout_margin="0dp"> <RelativeLayout android:id="@+id/action_bar_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="0dp" android:padding="0dp" android:background="#000000"> <Spinner android:layout_width="wrap_content" android:layout_height="wrap_content"/> </RelativeLayout> </Toolbar> 如您所见,我将所有相关的填充都设置为0,但是Spinner周围仍然有填充。我做错了什么或需要做什么才能摆脱多余的填充? 编辑 有些人质疑为什么我要这样做。 根据材料设计规范,旋转器应位于左侧72dp 我需要抵消Google放置在其中的填充,以便正确放置微调框: 编辑2 按照下面Chris Bane的回答,我将contentInsetStart设置为0。对于支持库,您将需要使用应用程序名称空间: <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="@dimen/action_bar_height" android:background="?attr/colorPrimary" android:contentInsetStart="0dp" android:contentInsetLeft="0dp" app:contentInsetLeft="0dp" app:contentInsetStart="0dp" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> </android.support.v4.widget.DrawerLayout> …

3
什么是Android中的.dex文件?
我对dex文件有一些疑问 dexAndroid中的文件是什么? dex如何在Android上工作? 如何在调试Android应用程序时使用它们? 它们类似于Java类文件吗? 我需要具体信息,请对此提供帮助,我们欢迎您提供任何实际示例!
193 android  dex 

22
如何更改新材质主题中后退箭头的颜色?
我已经将SDK更新为API 21,现在“后退/向上”图标是一个指向左侧的黑色箭头。 我希望它是灰色的。我怎样才能做到这一点? 例如,在Play商店中,箭头为白色。 我这样做是为了设置一些样式。我已经习惯@drawable/abc_ic_ab_back_mtrl_am_alpha了homeAsUpIndicator。该可绘制对象是透明的(仅Alpha),但是箭头显示为黑色。我不知道是否可以像在电视机上一样设置颜色DrawerArrowStyle。或者,如果唯一的解决方案是创建my @drawable/grey_arrow并将其用于homeAsUpIndicator。 <!-- Base application theme --> <style name="AppTheme" parent="Theme.AppCompat.Light"> <item name="android:actionBarStyle" tools:ignore="NewApi">@style/MyActionBar</item> <item name="actionBarStyle">@style/MyActionBar</item> <item name="drawerArrowStyle">@style/DrawerArrowStyle</item> <item name="homeAsUpIndicator">@drawable/abc_ic_ab_back_mtrl_am_alpha</item> <item name="android:homeAsUpIndicator" tools:ignore="NewApi">@drawable/abc_ic_ab_back_mtrl_am_alpha</item> </style> <!-- ActionBar style --> <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> <item name="android:background">@color/actionbar_background</item> <!-- Support library compatibility --> <item name="background">@color/actionbar_background</item> </style> <!-- Style for the navigation drawer …


4
拒绝权限:startForeground需要android.permission.FOREGROUND_SERVICE
最近,我们突然看到了以下一些堆栈跟踪。为什么会这样呢?这是从应用程序尝试通过媒体通知和所有内容将音频评论服务移至前台时开始的。 java.lang.SecurityException: Permission Denial: startForeground from pid=1824, uid=10479 requires android.permission.FOREGROUND_SERVICE at android.os.Parcel.createException(Parcel.java:1942) at android.os.Parcel.readException(Parcel.java:1910) at android.os.Parcel.readException(Parcel.java:1860) at android.app.IActivityManager$Stub$Proxy.setServiceForeground(IActivityManager.java:5198) at android.app.Service.startForeground(Service.java:695) at com.example.app.services.AudioService.setUpMediaNotification(AudioService.java:372) at com.example.app.services.AudioService.setUpAndStartAudioFeed(AudioService.java:328) at com.example.app.services.AudioService.onStartCommand(AudioService.java:228) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3667) at android.app.ActivityThread.access$1600(ActivityThread.java:199) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1681) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6669) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: android.os.RemoteException: Remote stack …


11
如何在Android运行时根据dp或dip来确定屏幕宽度?
我需要使用dip / dp(在java文件中)编码android小部件的布局。在运行时,如果我的代码, int pixel=this.getWindowManager().getDefaultDisplay().getWidth(); 这将返回以像素(px)为单位的屏幕宽度。要将其转换为dp,我进行了编码: int dp =pixel/(int)getResources().getDisplayMetrics().density ; 这似乎没有返回正确的答案。我制作了WVGA800仿真器,其屏幕分辨率为480 x800。运行仿真器并让代码打印pixel和dp的值时,两者的总和为320。该仿真器为240 dpi,其比例因子为0.75。

6
如何将主键作为Room Persistence lib的自动增量
我正在创建一个Entity(Room Persistence lib)类Food,我想在其中将其foodId作为自动增量。 @Entity class Food(var foodName: String, var foodDesc: String, var protein: Double, var carbs: Double, var fat: Double) { @PrimaryKey var foodId: Int = 0 var calories: Double = 0.toDouble() } 如何设置foodId自动递增字段?

3
如何在Android Project中使用ThreeTenABP
我问这个问题是因为我是Java和Android的新手,我花了数小时试图找出答案。答案来自一系列相关的答案,所以我想我会把自己学到的东西记录下来,以供其他可能挣扎的人学习。查看答案。 我正在使用Android Studio 2.1.2,并且我的Java设置如下: >java -version > openjdk version "1.8.0_91" > OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-3ubuntu1~15.10.1-b14) > OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)

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.