<LinearLayout android:id="@+id/svLL" android:orientation="horizontal"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<ScrollView android:id="@+id/sv"
android:layout_width="wrap_content" android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<!--
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/scrollbar_2_text" />
-->
<com.mypackage.MyDrawableView
android:layout_width="fill_parent" android:layout_height="wrap_content" />
</ScrollView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
public class MyDrawableView extends View {
Context thisContext;
public MyDrawableView(Context context, AttributeSet attr) {
super(context);
thisContext = context;
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
final Paint paint = new Paint();
paint.setColor(Color.BLUE);
paint.setTextSize(12);
canvas.drawText("Blah blah", 0, 100, paint);
}
}
Run Code Online (Sandbox Code Playgroud)
public class MyActivity extends Activity {
// Your member variable declaration here
// Called when the …Run Code Online (Sandbox Code Playgroud) 有时候,我开始了Activity我的应用程序,或者在快速切换Fragment的A S ViewPager是在特定的Activity,我有DeadObjectException这样的:
W/ActivityManager( 669): android.os.DeadObjectException
W/ActivityManager( 669): at android.os.BinderProxy.transact(Native Method)
W/ActivityManager( 669): at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:660)
W/ActivityManager( 669): at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:776)
W/ActivityManager( 669): at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2501)
W/ActivityManager( 669): at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2375)
W/ActivityManager( 669): at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2040)
W/ActivityManager( 669): at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:9667)
W/ActivityManager( 669): at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:9560)
W/ActivityManager( 669): at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:10205)
W/ActivityManager( 669): at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:9756)
W/ActivityManager( 669): at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86
Run Code Online (Sandbox Code Playgroud)
和应用程序崩溃.我也有一些像这样的不寻常的日志:
F/libc (24088): Fatal signal 11 (SIGSEGV) at 0x00000020 (code=1), thread 24115 (Thread-1047)
I/DEBUG (23974): *** *** *** *** *** …Run Code Online (Sandbox Code Playgroud) 我正在为观点实施"拖放".当拖动开始时,我将视图的可见性设置为INVISIBLE,然后,如果拖动被中断 - 返回到VISIBLE:
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
// Skipped some code
boolean dragStarted = v.startDrag(data, shadowBuilder, v, 0);
if (dragStarted) {
v.setVisibility(View.INVISIBLE)
}
}
}
Run Code Online (Sandbox Code Playgroud)
和:
if (event.getAction() == DragEvent.ACTION_DRAG_ENDED) {
View droppedView = (View) event.getLocalState();
droppedView.setVisibility(View.VISIBLE);
}
Run Code Online (Sandbox Code Playgroud)
当调用"Drag ended"事件时,我会遇到异常:
E/AndroidRuntime(7118): FATAL EXCEPTION: main
E/AndroidRuntime(7118): java.util.ConcurrentModificationException
E/AndroidRuntime(7118): at java.util.HashMap$HashIterator.nextEntry(HashMap.java:792)
E/AndroidRuntime(7118): at java.util.HashMap$KeyIterator.next(HashMap.java:819)
E/AndroidRuntime(7118): at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1046)
E/AndroidRuntime(7118): at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1048)
E/AndroidRuntime(7118): at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1048)
E/AndroidRuntime(7118): at android.view.ViewGroup.dispatchDragEvent(ViewGroup.java:1048)
E/AndroidRuntime(7118): at android.view.ViewRootImpl.handleDragEvent(ViewRootImpl.java:3471)
E/AndroidRuntime(7118): …Run Code Online (Sandbox Code Playgroud) 我正在AppCompatAndroid项目中使用支持库.AppCompat有大量的drawables和资源,我不在我的应用程序中使用.那些不必要的文件将我的900K应用程序增加到2M以上,这是我不喜欢的.
有没有办法在创建APK文件时排除这些文件?或者我应该在我的代码中混淆库而不是依赖?我在Android Studio中使用Gradle.
谢谢
编辑1我已经使用了proguard.但是proguard不知道我不想拥有drawable-xxxhdpi或者values-it例如.
编辑2我也使用Android Lint,它无法帮助我,因为我不直接访问lib的代码,并且android在构建APK文件时添加它们.
android android-appcompat apk android-support-library android-gradle-plugin
在我的应用程序中,我有一行用于增加窗口小部件的宽度(通过向右/向左拖动线),并且我ScrollView在相同的活动中启用了.我需要在用户触摸该行时禁用滚动视图操作,当用户释放时,应该启用它.本ScrollView应在可视状态,但滚动视图的作用应该被禁用.请帮我解决这个问题.我试过这些,但没有一个是有效的.
scroll.setEnabled(false);
scroll.setFocusable(false);
scroll.setHorizontalScrollBarEnabled(false);
scroll.setVerticalScrollBarEnabled(false);
Run Code Online (Sandbox Code Playgroud)
提前致谢.
我正在使用sqlite数据库....应用程序正在使用2.3及更高版本...当我试图在2.2中运行时...我得到了一个错误,如....
E/Database(2476):sqlite3_open_v2("/data/data/com.android.packagename/databases/dump.sqlite", &handle, 1, NULL) failed
Run Code Online (Sandbox Code Playgroud)
数据库有一些问题.
当我试图在2.2中运行我的应用程序时.我的logcat显示
E/Database(2476):sqlite3_open_v2("/data/data/com.android.canadaQbank/databases/dump.sqlite", &handle, 1, NULL) failed
D/asset(2476): Data exceeds UNCOMPRESS_DATA_MAX (4594688 vs 1048576)
D/AndroidRuntime(2476): Shutting down VM
W/dalvikvm(2476): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
D/dalvikvm(2476): GC_FOR_MALLOC freed 6256 objects / 356848 bytes in 165ms
E/AndroidRuntime(2476): FATAL EXCEPTION: main
E/AndroidRuntime(2476): java.lang.Error: Error copying database
E/AndroidRuntime(2476): at com.android.canadaQbank.DBAdapter.createDataBase(DBAdapter.java:83)
E/AndroidRuntime(2476): at com.android.canadaQbank.Select.getUsers(Select.java:110)
E/AndroidRuntime(2476): at com.android.canadaQbank.Select.onCreate(Select.java:92)
E/AndroidRuntime(2476): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
E/AndroidRuntime(2476): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
E/AndroidRuntime(2476): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
E/AndroidRuntime(2476): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
E/AndroidRuntime(2476): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime(2476): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime(2476): at …Run Code Online (Sandbox Code Playgroud) 我正面临着java.lang.NoSuchMethodError: android.nfc.NdefRecord.createUri这段代码的异常:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
mNfcAdapter = NfcAdapter.getDefaultAdapter(this.getApplicationContext());
try {
if (mNfcAdapter == null) {
} else {
NdefRecord uriRecord = NdefRecord.createUri(someUri);
NdefMessage msg = new NdefMessage(new NdefRecord[] {uriRecord});
mNfcAdapter.setNdefPushMessage(msg, this);
}
} catch (Exception e) {
Log.e(getClass().getSimpleName(), "initNfcNdefMessage()", e);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,initNfcNdefMessage 不会在堆栈跟踪中打印.这怎么可能?