这有什么问题?我真的不明白UIImagePickerController的一些重要部分....
这里是来源:
UIImagePickerController *imagePickerController = [[UIImagePickerController alloc] init];
imagePickerController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePickerController.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
imagePickerController.delegate = self;
[self presentModalViewController:imagePickerController animated:YES];
[imagePickerController release];
Run Code Online (Sandbox Code Playgroud)
我不能打开照片库吗?任何帮助赞赏!
我想在不同的活动中重用相同的视图对象(不是视图类,或者xml文件,我的意思是内存中的对象).
我几乎完成了这件事.当然,问题在于背景.
我尝试了应用程序上下文.它几乎可以工作,但是当我点击我在不同活动之间传输的视图时,尝试从它(或链接)启动另一个应用程序它崩溃了.(我不记得确切的崩溃,但如果你需要的话我会挖它).
我尝试了一些活动,我不介意泄漏一次,并将其作为一个上下文.它工作,实际上一切正常,直到我开始在ViewFlipper中得到奇怪的例外.
我的问题是,这种重用真的有可能,如何稳定?你有这方面的经验吗?
丹,先谢谢了
我需要它专门用于图像失真(滤镜,模糊等也欢迎;)).你知道一些具有适当许可证的库(Apache,MIT,也是LGPL),我可以使用吗?价格合理的礼品图书馆 - 也向他们开放.也可以在C中.
提前谢谢,丹尼尔
我认为之前有人询问过,但仍有一些我无法理解的事情.
我尝试了两种不同的方法:
在2.它只是清理它们有时第二次我分配它们!而且我没有分配太多 - 30-40张50x50像素的图像.
所以我坚持一个.问题是限制是什么?
我有一个问题,从市场报道 - 应用程序中的巨大崩溃,告诉我:
java.lang.RuntimeException:无法启动活动ComponentInfo {com .... android/com .... android.activities ....}:java.lang.IllegalArgumentException:错误的状态类,期待View State但收到类android .widget.ProgressBar $ SavedState.当两个不同类型的视图在同一层次结构中具有相同的id时,通常会发生这种情况.该视图的id是id/0x2.确保其他视图不使用相同的ID.
所以我知道它通常意味着它所说的 - 我有一些带有重复ID的视图.这很好,但令我担心的是,我认为重复的id视图来自我已经集成的一些广告网络.我尝试在视图中使用try/catch包含崩溃,它包含每个广告,但它无法捕获它.
所以我的下一个想法是广告视图仍然在这方面有一些作用,但崩溃发生在另一个(我自己的)视图上,具有相同的ID.问题是,我不知道那个视图是什么以及在哪里搜索它.你有什么想法可以是id为0x2的视图吗?(也是0x3 - 很多关于该ID的报道)?您是否偶然发现了与广告网络相关的类似崩溃?
真的很沮丧.任何帮助赞赏!
谢谢,丹
PS完整堆栈跟踪:
java.lang.RuntimeException:无法启动活动ComponentInfo {com ..... android/com ..... android.activities ....}:java.lang.IllegalArgumentException:错误的状态类,期待View State但收到改为使用android.widget.ProgressBar $ SavedState.当两个不同类型的视图在同一层次结构中具有相同的id时,通常会发生这种情况.该视图的id是id/0x2.确保其他视图不使用相同的ID.在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1651)在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)在android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:2836)在android.app. ActivityThread.access $ 1600(ActivityThread.java:117)在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:939)在android.os.Handler.dispatchMessage(Handler.java:99)在android.os.Looper.在java.lang.reflect.Method.invoke的java.lang.reflect.Method.invokeNative(Native Method)的android.app.ActivityThread.main(ActivityThread.java:3691)上循环(Looper.java:130)(方法. Java的:507)在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:907)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)在dalvik.system.NativeStart .main(Native Method)引起:java.lang.IllegalArgumentException:错误的状态类,期望View State但是收到了类android.widget.ProgressBar $ SavedState.当两个不同类型的视图在同一层次结构中具有相同的id时,通常会发生这种情况.该视图的id是id/0x2.确保其他视图不使用相同的ID.在android.view.View.onRestoreInstanceState(View.java:6355)在android.view.View.dispatchRestoreInstanceState(View.java:6331)在android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1211)在android.view.位于android.view.View.View.St上的android.view.ViewGroup中的android.view.View.ViewGroup中的android.view.ViewGroup中的android.view.ViewGroup中的android.view.ViewGroup中的android.view.ViewGroup中的ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)ViewGroup.dispatchRstoreInstanceState(ViewGroup.java:1215)(ViewGroup.java:1215)的.java:1215)在android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:1215)在android.view.View.restoreHierarchyState(View.java:6310)在com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState( PhoneWindow.java:1537)在android.app.Activity.onRestoreInstanceState(Activity.java:850)在android.app.Activity.performRestoreInstanceState(Activity.java:822)在android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1096 )在android.app.ActivityThread.perfor mLaunchActivity(ActivityThread.java:1629)......还有12个
我在project.properties中启用了proguard:
proguard.config = proguard.cfg
我的proguard.cfg不会禁用混淆。但是没有什么被混淆。
我运行项目构建
蚂蚁释放。
钟声响了吗?
-optimizationpasss 5 -dontusemixedcase类名-dontskipnonpubliclibraryclasses -dontpreverify -verbose -optimizations!code / simplification / arithmetic,!field /,!class / merging /
-keep公共类*扩展android.app.Activity -keep公共类*扩展android.app.Application -keep公共类*扩展android.app.Service -keep公共类*扩展android.content.BroadcastReceiver -keep公共类*扩展android.content.ContentProvider -keep公共类*扩展android.app.backup.BackupAgentHelper -keep公共类*扩展android.preference.Preference -keep公共类com.android.vending.licensing.ILicensingService
-keepclasseswithmembernames类* {本机; }
-keepclasseswithmembers类* {公共(android.content.Context,android.util.AttributeSet); }
-keepclasseswithmembers类* {public(android.content.Context,android.util.AttributeSet,int); }
-keepclassmembers类*扩展了android.app.Activity {public void *(android.view.View); }
-keepclassmembers枚举* {public static * [] values(); 公共静态* valueOf(java.lang.String); }
-keep class *实现android.os.Parcelable {public static final android.os.Parcelable $ Creator *; }
我很好奇,伙计们,
有哪些确切的案例doTraversal -> performTraversals被称为?由于我有非常繁重的Activity,我希望应用程序调用onDraw或排序.performTraversals相当沉重,它正在尝试/测量它是否应该调整视图大小,我认为这样的东西.当我在做一些观点时,我不需要它,没有其他观点依赖于GONE,但我想我不能忽略它.所以在深入研究Android的源代码之前,我想问一下.如果您知道,请随时分享:)
谢谢,Danail
我有一个观点,我想用手指移动它.我想得到xDelta和yDelta,只是翻译视图的矩阵(不是图像视图,任何视图,例如RelativeLayout).我想知道如何做到这一点:
我不能直接通过onDraw操纵任何视图的矩阵吗?我试过这样的事情:
@Override
protected void onDraw(Canvas canvas) {
if (getDx() != 0 && getDy() != 0) {
m = canvas.getMatrix();
m.postTranslate(dx, dy);
canvas.setMatrix(m);
}
super.onDraw(canvas);
}
Run Code Online (Sandbox Code Playgroud)
但似乎我做错了.
如何才能做到这一点?这是否会在UpdatePanel完成后排除它?
我想在Android中退出应用程序.只需点击"退出"按钮即可杀死我的应用.
我知道我不应该这样做.我知道这不是操作系统的哲学.
如果你知道怎么做,请分享.
在应用程序中,我有许多已打开的活动,因此"完成()"将无法完成工作.
提前感谢您的信息.Danail