- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
这个我的游戏一切正常,除了加载图像作为按钮背景时,我已经尝试了 stackoverflow 中的所有答案,但没有一个有效,当未设置背景图像时,错误消失。以下是我的代码
Logcat
10-30 19:38:42.473 17302-17302/com.danaraddi.quickmath W/art: Throwing OutOfMemoryError "Failed to allocate a 16777228 byte allocation with 4194304 free bytes and 5MB until OOM"
10-30 19:38:42.473 17302-17302/com.danaraddi.quickmath D/skia: --- allocation failed for scaled bitmap
10-30 19:38:42.476 17302-17302/com.danaraddi.quickmath W/System.err: android.view.InflateException: Binary XML file line #91: Binary XML file line #91: Error inflating class <unknown>
10-30 19:38:42.476 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at com.android.internal.policy.PhoneWindow.setContentView(PhoneWindow.java:393)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.Activity.setContentView(Activity.java:2166)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at com.danaraddi.quickmath.activities.ScoreActivity.onCreate(ScoreActivity.java:56)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.Activity.performCreate(Activity.java:6237)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.ActivityThread.-wrap11(ActivityThread.java)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.os.Looper.loop(Looper.java:148)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5417)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at java.lang.reflect.Method.invoke(Native Method)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: Caused by: android.view.InflateException: Binary XML file line #91: Error inflating class <unknown>
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.createView(LayoutInflater.java:645)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at com.android.internal.policy.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:58)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.onCreateView(LayoutInflater.java:694)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:762)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.rInflate(LayoutInflater.java:835)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.rInflate(LayoutInflater.java:838)
10-30 19:38:42.478 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798)
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: ... 17 more
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: Caused by: java.lang.reflect.InvocationTargetException
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: at java.lang.reflect.Constructor.newInstance(Native Method)
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.LayoutInflater.createView(LayoutInflater.java:619)
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: ... 26 more
10-30 19:38:42.483 17302-17302/com.danaraddi.quickmath W/System.err: Caused by: java.lang.OutOfMemoryError: Failed to allocate a 16777228 byte allocation with 4194304 free bytes and 5MB until OOM
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:609)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:444)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:1080)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.Resources.loadDrawableForCookie(Resources.java:2635)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.Resources.loadDrawable(Resources.java:2540)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.TypedArray.getDrawable(TypedArray.java:870)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.drawable.StateListDrawable.inflateChildElements(StateListDrawable.java:170)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.drawable.StateListDrawable.inflate(StateListDrawable.java:115)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:1215)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.graphics.drawable.Drawable.createFromXml(Drawable.java:1124)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.Resources.loadDrawableForCookie(Resources.java:2630)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.Resources.loadDrawable(Resources.java:2540)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.content.res.TypedArray.getDrawable(TypedArray.java:870)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.view.View.<init>(View.java:3948)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.widget.TextView.<init>(TextView.java:677)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.widget.Button.<init>(Button.java:109)
10-30 19:38:42.484 17302-17302/com.danaraddi.quickmath W/System.err: at android.widget.Button.<init>(Button.java:105)
10-30 19:38:42.485 17302-17302/com.danaraddi.quickmath W/System.err: at android.widget.Button.<init>(Button.java:101)
10-30 19:38:42.485 17302-17302/com.danaraddi.quickmath W/System.err: ... 28 more
10-30 19:38:42.531 17302-17317/com.danaraddi.quickmath W/EGL_emulation: eglSurfaceAttrib not implemented
10-30 19:38:42.531 17302-17317/com.danaraddi.quickmath W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x9fbbf0e0, error=EGL_SUCCESS
10-30 19:38:42.728 17302-17317/com.danaraddi.quickmath W/EGL_emulation: eglSurfaceAttrib not implemented
10-30 19:38:42.728 17302-17317/com.danaraddi.quickmath W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x9fb7b280, error=EGL_SUCCESS
10-30 19:38:43.227 17302-17317/com.danaraddi.quickmath E/Surface: getSlotFromBufferLocked: unknown buffer: 0x9fb75650
10-30 19:38:46.073 17302-17317/com.danaraddi.quickmath E/Surface: getSlotFromBufferLocked: unknown buffer: 0x9fb766f0
布局 XML
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_green"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:weightSum="4"
tools:context="com.danaraddi.quickmath.activities.ScoreActivity">
<LinearLayout
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="GAME OVER"
android:textSize="40sp" />
</LinearLayout>
<RelativeLayout
android:layout_weight="1.5"
android:layout_width="match_parent"
android:background="@drawable/button_normal"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv_score_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="SCORE"
android:layout_marginTop="75dp"
android:gravity="center"
android:textSize="25sp"
/>
<TextView
android:id="@+id/tv_score"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="SCORE"
android:gravity="center"
android:layout_below="@+id/tv_score_title"
android:textSize="20sp"
/>
<TextView
android:layout_below="@+id/tv_score"
android:id="@+id/tv_bestscore_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="HIGH SCORE"
android:layout_marginTop="35dp"
android:gravity="center"
android:textSize="25sp"
/>
<TextView
android:id="@+id/tv_bestscore"
android:layout_below="@+id/tv_bestscore_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="SCORE"
android:gravity="center"
android:textSize="20sp"
/>
</RelativeLayout>
<LinearLayout
android:layout_weight="1"
android:layout_width="match_parent"
android:gravity="center"
android:layout_height="wrap_content">
<Button
android:textSize="20sp"
android:text="SHARE"
android:background="@drawable/button"
android:layout_width="100dp"
android:layout_height="50dp" />
</LinearLayout>
<LinearLayout
android:layout_weight=".5"
android:layout_width="match_parent"
android:orientation="horizontal"
android:gravity="center"
android:layout_height="wrap_content">
<Button
android:id="@+id/btn_return_home"
android:layout_margin="5dp"
android:background="@drawable/btn_home"
android:layout_width="75dp"
android:layout_height="75dp" />
<Button
android:id="@+id/btn_leaderboards"
android:layout_margin="5dp"
android:background="@drawable/btn_game"
android:layout_width="75dp"
android:layout_height="75dp" />
<Button
android:id="@+id/btn_reload"
android:layout_margin="5dp"
android:background="@drawable/btn_reload"
android:layout_width="75dp"
android:layout_height="75dp"
/>
</LinearLayout>
</LinearLayout>
Java 文件
package com.danaraddi.quickmath.activities;
//import com.google.android.gms.games.Games;
import android.content.Intent;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
import com.danaraddi.quickmath.GameServices.LeaderBoardHelper;
import com.danaraddi.quickmath.R;
import com.danaraddi.quickmath.Utility.PreferenceManager;
import com.google.android.gms.games.Games;
import com.google.example.games.basegameutils.BaseGameActivity;
import butterknife.ButterKnife;
import butterknife.InjectView;
import butterknife.OnClick;
public class ScoreActivity extends BaseGameActivity {
int BACK_KEY_PRESS_COUNT = 0;
PreferenceManager preferenceManager;
// Textview Objects
@InjectView(R.id.tv_score)
TextView tvScore;
@InjectView(R.id.tv_bestscore)
TextView tvBestScore;
@OnClick(R.id.btn_reload)
void btn_reload_click() {
reloadGame();
}
@OnClick(R.id.btn_leaderboards)
void btn_gameservices_click() {
googleGameServices();
}
@OnClick(R.id.btn_return_home)
void btn_home_click() {
returnHome();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// error occuring
try {
setContentView(R.layout.activity_score);
ButterKnife.inject(this);
preferenceManager = new PreferenceManager(this);
setScores();
}catch (Exception e){
Toast.makeText(this, e.toString(), Toast.LENGTH_LONG).show();
e.printStackTrace();
}
}
@Override
public void onBackPressed() {
returnHome();
}
// kill activity
private void returnHome(){
this.finish();
}
//reload game
private void reloadGame(){
startActivity(new Intent(this, GameActivity.class));
this.finish();
}
// Game Services
private void googleGameServices(){
startActivityForResult(Games.Leaderboards.getLeaderboardIntent(
getApiClient(), getString(R.string.quick_math_leaderboard)),
2);
}
private void setScores(){
tvScore.setText(String.valueOf( preferenceManager.returnFromPreferenceLong("SCORE")));
tvBestScore.setText(String.valueOf( preferenceManager.returnFromPreferenceLong("HIGHSCORE")));
}
@Override
public void onSignInFailed() {
}
@Override
public void onSignInSucceeded() {
LeaderBoardHelper.submitScore(getApiClient(), preferenceManager.returnFromPreferenceLong("HIGHSCORE"));
}
}
*我已经将背景图片存储在drawable文件夹中,其他用于按钮的图像甚至存储在drawable文件夹中,按钮图像的分辨率为512 * 512px*
<小时/>I have fixed this issues, i have reduced the image resolution form 512*512 to 96*96 from the guidelines suggested here
最佳答案
您正在尝试分配 16,777,228 字节的内存块。在许多设备上您不会有那么大的内存块,并且有时您在任何设备上都没有那么大的内存块。
您设置的背景图片太大。根据内存分配,它相当于一个 2048px x 2048px 的方形图像,比我所知道的任何 Android 设备屏幕都大。
您需要降低此背景图像的分辨率,或者为您的背景采用其他解决方案,避免使用位图作为背景图像。
关于java - android.view.InflateException : Binary XML file line #91: Binary XML file line #91: Error inflating class <unknown>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33438145/
您好,所以在我们的项目中,我们使用的是书法库,它没有任何问题,但现在在我添加的一项 Activity 中,它不断崩溃并出现以下堆栈跟踪: 01-23 02:25:32.178 3654-3654/?
I published my application to the Play Store as open beta. I don't get any error when I run it wi
我因为工作室提示 Dialog 而苦苦挣扎已弃用, 所以我又去阅读文档,似乎 Toast也被弃用了。 所以我尝试从 Toast 迁移至Snackbar ,但目前失败...我 我加了 implement
每当我更改屏幕方向时,我的应用程序都会崩溃并出现以下异常。我相信这与 ImageViews 导致模拟器内存不足有关,但我无法理解堆栈跟踪。 在 ProfileActivity.java(我想允许改
InflateException 在使用 glide 加载大量图像时发生。 我做了一些研究并意识到 InflateException 可能不是我的 android 应用程序崩溃的真正原因,真正的问题应
我有更多的 Activity ,我没有任何问题,但是当我开始这个 Activity (Segunda)时它坏了在此 Activity 中,我尝试使用 customView 进行缩放和绘制,但我找不到问
我正在尝试创建一个自定义 View - 手指绘画,但我遇到了这个错误,我不知道如何修复它。谁能告诉我哪里出了问题? 日志: 08-04 08:34:01.171: E/AndroidRuntime(1
我的应用程序出现此错误 Error inflating class android.support.design.widget.FloatingActionButton 我在互联网上搜索错误,我尝试了
我有 recyclerview 项目,我正在尝试编辑它们的外观。我尝试向 recyclerview 的每个项目添加一个 float 操作按钮,但它引发了此错误: android.view.Inflat
我正在尝试与我的 fragment 进行通信,但代码与我不一致并给了我错误 E/AndroidRuntime: FATAL EXCEPTION: main Process
我对应用程序开发仍然很陌生,所以我正在努力创建一个跨越 5 页(我猜是 fragment )的基本音板。在 Android Studio 中创建项目时,我从默认的“选项卡式 Activity ”选项为
我已经做了一些尝试来修复这个错误。由于我不明白,所以我没有其他解决方法。 这是我的 XML -->
所以,我在 android.view.InflateException 方面遇到了很多麻烦,我不完全确定为什么。当我尝试加载 Google map fragment 时会发生这种情况。 对于此错误的任
我遇到了一个错误的痛苦。我有一个 SherlockFragmentActivity 和至少两个 SherlockFragment。两者都使用 onCreateView 来扩充 xml 文件。然而,Lo
启动具有 fragment 的 Activity 时,我不断收到该错误。 这是我的代码的概述: 主页 Activity 从启动 屏幕 Activity 开始 home.xml(每个 fragment
我使用 RingtonePreference 并希望使用默认通知声音作为默认首选项值。为此,我遵循了以下建议:RingtonePreference Default value 可悲的是,实际上我得到了
我的 xml 文件的第 59 行: 错误发生是因为 ?attr/属性。如果我将它替换为#FF00000 或其他内容,一切正常。这种崩溃并不经常发生。 07-28 19:16:46.686
我正在尝试设置一个虚拟测试以开始我的 android 项目。但是我无法让我的应用程序与 Espresso 一起运行。未经测试,该应用程序运行良好。 这是回溯: Running tests Test r
我在实现Jake Wharton's ViewPagerIndicator的时候发现了一些问题.这些是 Logcat 上的内容: 06-19 15:32:02.661: E/AndroidRuntim
我刚刚通过这个 setup 设置了 Robolectric 测试当我测试我的应用程序时,它给我一个错误。 我已将问题缩小到我的自定义 ActionBar 布局 中的 ProgressSpinner。当
我是一名优秀的程序员,十分优秀!