当方向更改时,片段viewState仅在中恢复onStart.之后onAttach,onCreateView,onViewCreated和onActivityCreated甚至之后onCreate.为什么?这太晚了.
我需要根据一些TextView值将db查询结果填充到ListView.目前我尝试这样做onViewCreated.但是此步骤未恢复视图状态.
我能早点强制恢复吗?或者如何克服这个问题?请问任何想法.
PS:我使用actionbarsherlock和依赖android支持-v4 r7库
PS2:如果我将加载数据onStart然后它将在片段恢复之后执行额外的查询onStop(我可以通过添加一些布尔值来解决这个问题isLoaded- 但这不是最佳解决方案).
在Swing应用程序中,我可以声明一个允许维护的Action对象:
和其他东西在一个地方.
让我向您介绍一些细节:
我有一个场景TreeView.在场景中我有一些按钮,允许添加孩子和删除所选项目.
Additionaly即时具有ContextMenu用于TreeView与MenuItem的其做同样的事情作为按钮.
根据所选项目,我需要启用或禁用这些菜单项和按钮.
在Swing中,我可以使用Swing Action轻松解决这个问题.即启用/禁用操作将启用/禁用所有相关组件.
JavaFX 2.2是否有一些Swing Action的模拟?
发现std::unordered_set并且std::unordered_map有基于范围的erase(first, last),在我看来是另一种拍摄自己的好方法.
也许有人知道这种功能的任何真实用例?
或者这可能被视为糟糕的设计?
我想测试两个服务:
首先,我正在构建一些复杂的文件结构(仅举例{user}/{date}/{time}/{generatedId}.bin)
第二,我将数据写入第一服务传递的文件(第一服务调用第二服务)
如何使用模拟测试这两种服务而不进行任何真正的IO交互?
仅举例如:
第一服务:
public class DefaultLogService implements LogService
{
public void log(SomeComplexData data)
{
serializer.write(new FileOutputStream(buildComplexFileStructure()), data);
or
serializer.write(buildComplexFileStructure(), data);
or
serializer.write(new GenericInputEntity(buildComplexFileStructure()), data);
}
private ComplextDataSerializer serializer; // mocked in tests
}
Run Code Online (Sandbox Code Playgroud)
第二服务:
public class DefaultComplexDataSerializer implements ComplexDataSerializer
{
void write(InputStream stream, SomeComplexData data) {...}
or
void write(File file, SomeCompexData data) {...}
or
void write(GenericInputEntity entity, SomeComplexData data) {...}
}
Run Code Online (Sandbox Code Playgroud)
在第一种情况下,我需要传递FileOutputStream,这将创建一个文件(即我无法测试第一个服务)
在第二种情况下,我需要传递文件.如果我需要测试将写入指定文件的数据,我在第二次服务测试中该怎么办?(我无法测试第二次服务)
在第三种情况下,我认为我需要一些通用IO对象,它将包装文件.也许为此目的有一些现成的解决方案?
考虑以下代码:
const int x = 5;
int main() {
int* p = const_cast<int*>(&x);
*p = 10;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它会导致分段错误.现在考虑一下:
int main() {
const int x = 5;
int* p = const_cast<int*>(&x);
*p = 10;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它工作正常.