所以我需要从jar/war文件中删除一个文件.我希望有类似"jar -d myjar.jar file_I_donot_need.txt"的内容
但是现在我从Linux命令行(不使用WinRAR/Winzip或Linux等价物)看到这样做的唯一方法就是
请告诉我有一个较短的方法?
据我所知,Bundle并且Parcelable属于Android执行序列化的方式.例如,它用于在活动之间传递数据.但我想知道,如果在将Parcelable业务对象的状态保存到内部存储器的情况下使用而不是经典序列化有什么好处吗?它会比传统方式更简单或更快吗?我应该在哪里使用经典序列化以及哪里更好地使用捆绑包?
嗨,我有以下代码:
@RunWith(Test9Runner.class)
public class MainActivityTest
{
private MainActivity activity;
private Button pressMeButton;
@Before
public void setUp() throws Exception
{
activity = new MainActivity();
activity.onCreate(null);
pressMeButton = (Button) activity.findViewById(R.id.button1);
}
@Test
public void shouldUpdateResultsWhenButtonIsClicked() throws Exception
{
pressMeButton.performClick();
ShadowActivity shadowActivity = shadowOf(activity);
Intent intent = shadowActivity.getResultIntent();
System.out.print(intent.toString());
}
}
Run Code Online (Sandbox Code Playgroud)
但我不知道如何测试压力按下的MeButton开始了一个新的活动.实际上确实如此,但是如何为这个事实编写正确的Robolectric单元测试呢?
我有一个对象数组:
[{"value":"14","label":"7"},{"value":"14","label":"7"},{"value":"18","label":"7"}]
Run Code Online (Sandbox Code Playgroud)
如何删除此项{"value":"14","label":"7"}导致新数组:
[{"value":"14","label":"7"},{"value":"18","label":"7"}]
Run Code Online (Sandbox Code Playgroud)
?
我知道活动状态保存和恢复.但我想要做的是保存和恢复视图的状态.我有一个自定义视图和两个重写方法:
@Override
protected void onRestoreInstanceState(Parcelable state) {
if (state instanceof Bundle) {
Bundle bundle = (Bundle) state;
currentLeftX = bundle.getInt(CURRENT_LEFT_X_PARAM, 0);
currentTopY = bundle.getInt(CURRENT_TOP_Y_PARAM, 0);
}
super.onRestoreInstanceState(state);
}
@Override
protected Parcelable onSaveInstanceState() {
super.onSaveInstanceState();
Bundle bundle = new Bundle();
bundle.putInt(CURRENT_LEFT_X_PARAM, currentLeftX);
bundle.putInt(CURRENT_TOP_Y_PARAM, currentTopY);
return bundle;
}
Run Code Online (Sandbox Code Playgroud)
我希望这可以无缝工作,但遇到并且错误:
引起:java.lang.IllegalArgumentException:错误的状态类,期待View State但是收到类android.os.Bundle.当两个不同类型的视图在同一层次结构中具有相同的id时,通常会发生这种情况.该视图的id是id/mapViewId.确保其他视图不使用相同的ID.在android.view.View.onRestoreInstanceState(View.java:6161)
但这种观点是我活动中唯一的观点.所以,我问:
保存视图状态的正确方法是什么?
我正在使用选项卡式应用程序.我的应用程序有一个EditText.当我单击EditText时,窗口将调整大小,虚拟键盘显示在窗口的底部.但是四个标签显示在键盘的顶部.
当keyborad显示时,我不想显示我的标签.或者我不想调整窗口大小.我需要隐藏EditText下方的标签和其他内容.
我在清单中使用了'android:windowSoftInputMode'的所有选项.但我看不出任何差异.
请给我解决方案.
谢谢..
编译以下代码时发现有趣的事情:
1 class A {
2
3 private B line;
4
5 public void foo() {
6 for (Integer line : line.getElements()) {
7
8 }
9 }
10 }
11
12 class B {
13
14 List<Integer> getElements() {
15 return null; // doesn't matter
16 }
17 }
Run Code Online (Sandbox Code Playgroud)
注意第6行:我们看到变量名等于字段名.IntelliJ Idea 11忽略了这一点,并认为这里没有麻烦.但java编译器告诉我'line没有方法getElements'.那么,有两个问题:
我已经扩展了Overlay并实现draw()了以便在地图上绘制一些东西.完成缩放mapController.zoomIn()(双击地图时调用),叠加层将正确绘制到地图上.
但是每当我使用内置的变焦控制器放大/缩小时,叠加都没有正确绘制,并且需要平移地图才能刷新叠加层.
在我的Android应用程序中,我使用AsynTask with Progress Dialog(请等待登录...)用于使用我的网页登录用户(AsynTask内的Web服务功能)
我想在用户点击设备上的后退按钮时解除进度对话框并取消AsynTask.
我无法找到那种中断AsynTask的例子.我读了abouth cancel(boolean)但我不知道如何从UI调用.
任何人都可以给我一些想法
谢谢
android ×7
bundle ×2
java ×2
apk ×1
arrays ×1
foreach ×1
jar ×1
javascript ×1
keyboard ×1
linux ×1
overlay ×1
parcelable ×1
robolectric ×1
view ×1
zoom ×1