我目前正在尝试动态创建Android View对象,然后根据图库中的一些用户选择将此视图添加到窗口小部件.问题是它没有可绘制资源的setter.设置图像的唯一方法是预定义xml布局.我无法设置用户选择的图像.
即使我可以创建一个视图,它也不会设置正确的属性.我尝试实现自己的并暴露了drawables,但后来又遇到了"Class Not Found"这个问题,我读到了它无法绕过的问题.
是否可以在构造函数的AttributeSet中提供一些东西?
真的很挣扎,如果我能找到一种方法来设置选项,我甚至不需要自定义视图.
android:drawable1="@drawable/predefined_image"
android:drawable2="@drawable/predefined_image"
Run Code Online (Sandbox Code Playgroud)
并通过AttributeSet传递它,因为我知道它只需要这些并从中创建drawable.
好的,让我们澄清一下这个问题,
我有一个xml布局文件
<AndroidSystemWidget
android:drawable1="@Drawable/drawable1"
android:drawable2="@Drawable/drawable2"
/>
Run Code Online (Sandbox Code Playgroud)
现在我在SD卡上有2个png文件/sdcard/pictures/image1.png /sdcard/pictures/image2.png
现在在代码中没有暴露的drawable1或2的setter只有一个构造函数
AndroidSystemWidget widget = new AndroidSystemWidget(Context, AttributeSet)
Run Code Online (Sandbox Code Playgroud)
我想在我的widget配置中创建这个AndroidSystemWidget,上面的两个png文件设置为drawable1和drawable2,然后通过app widget提供程序上的Views设置它.
我目前正在使用AudioTrack播放录制的音乐。这涉及将轨道数据写入音频缓冲区。如何使用音频数据流在屏幕上绘制表示实时播放的音频的波形?在不确定如何入门之前,我还没有在android上使用任何高级图形。我必须使用openGL还是可以实现View?以及如何将数据转换为有用的图形。
在使用Android开发小部件时,您似乎无法将自己的自定义View类添加到AppWidgetProvider.
例如,我创建了一个扩展View的自定义类,这在Activity中使用时效果很好,但是当我将它添加到Widget时,我得到一个"ClassNotFoundException",因为Android似乎只允许添加一组特定的系统小部件.
我看过一些应用程序,看起来他们已经制作了自己的自定义小部件.例如,有一个在单击时显示径向菜单,显示应用程序快捷方式.这些是如何实施的?是否有使用我自己的自定义小部件的工作?他们似乎有一个画布,他们可以在小部件中绘制.
好的快速示例https://market.android.com/details?id=zombiesinthelab.widgets.droidpetwidget&feature=top-paid 所以这个小部件只是通过绘制ImageViews并定期更新它们而不是使用画布绘制框架来完成的?
我有以下定义.
@Autowired
DaoType1<object1> someDao;
@Autowired
DaoType1<object1> someListDao;
Run Code Online (Sandbox Code Playgroud)
在我的bean定义中,我有两个相同类型的bean
<bean id="someDao" class="com.example.DaoType1" />
<bean id="someListDao" class="com.example.DaoType1" />
Run Code Online (Sandbox Code Playgroud)
第二个bean是从另一个xml文件导入的,如果这有所不同的话.它们也有不同的属性.为什么spring没有抛出错误,因为已经定义了2个相同类型的bean.它是否使用变量名称,因为它们匹配bean ID.如果我将@Qualifiers用于两个不同的bean,则dao是不同的,并且功能按预期工作.
这是一个更简洁的版本.因为我没有相关性,所以我遗漏了其他豆子.
applicationContext.xml中
<import resource="classpath:dm-services-crud.xml"/>
<bean id="ruleListCrudService" class="com.idna.dm.service.crud.impl.RuleCrudServiceImpl">
<property name="crudDao" ref="ruleListCrudDao" />
</bean>
Run Code Online (Sandbox Code Playgroud)
DM-服务,crud.xml
<bean id="ruleCrudService" class="com.idna.dm.service.crud.impl.RuleCrudServiceImpl">
<property name="crudDao" ref="ruleCrudDao" />
<property name="ruleNetworkOfNodesCrudService" ref="ruleNetworkOfNodesCrudService" />
<property name="elementMappingsCrudService" ref="elementMappingsCrudService" />
<property name="ruleCrudDao" ref="newRuleCrudDao"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
default-autowire根本不存在于我的任何xml文件中.
我有一个包含2个单选按钮和2个标签的跨度.当用户从下拉列表中选择特定值时,不适用于显示单选按钮,因此我将其淡出.再次选择不同的值时,我会将它们淡入.
当我淡出包含它们的跨度时,跨度右侧的文本输入框向左跳跃以填充空白区域.当跨度隐藏时,如何让文本输入框向左滑动而不是跳跃?当跨度渐入时,如何向右滑动?
文本输入框的id是responseInput.
$("#logicSelect").change( function(){
if($("#logicSelect").val() == 10 || $("#logicSelect").val() == 9){
$("#checkBoxes:visible").fadeOut();
$("#newReponseRadio").val("false");
$("#existingResponseRadio").val("true");
}else{
$("#checkBoxes:hidden").fadeIn();
};
});
Run Code Online (Sandbox Code Playgroud)
编辑1:
简要更新.我试图做滑动和褪色,但它不能很好地工作.
if($("#logicSelect").val() == 10 || $("#logicSelect").val() == 9){
$("#checkBoxes:visible").animate({
opacity: 0
}, 2000, function(){
$("#checkBoxes").hide("slide", { direction: "left" }, 2000);
});
}else{
$("#checkBoxes:hidden").animate({
opacity: 100
}, 2000, function(){
$("#checkBoxes").show("slide", { direction: "right" }, 2000);
});
}
Run Code Online (Sandbox Code Playgroud)
首先,当它执行淡出动画时,它工作正常.当我做它的瞬间淡化回到100%而不是渐进的.此外,当它进行滑动时,输入框决定跳过下一行并再次返回,原因是一些奇怪的原因,就像调整元素的大小一样.有任何想法吗?我今天刚刚开始做JQuery,所以如果我是密集的,请告诉我.
编辑2:
只是在没有其他函数的情况下单独执行幻灯片会导致元素checkBoxes一直跳转到新行.为什么跨度跳线?
编辑3:
好的只是为了清楚.我有3个下拉,带有单选按钮的跨度(我试图淡化和滑动),然后是最后一个下拉列表.当我进行滑动时,跨度和最终下拉总是转到新线?所以此刻我仍然停留在这一点上.
使用GEB我使用页面对象模式静态封装有关不同页面的信息.
然后,我重构了我的GEB代码,以便从一个单独的类中使用,因此我可以使用方法调用封装常用命令.
例如,我将有一个方法login(),它将调用相应的GEB代码登录我正在测试的网站.然后我会在TestHelper类上使用方法调用来使用其他常用函数.
我想将这些常用功能移动到他们所采用的页面上.例如,搜索页面将具有搜索方法,登录页面将具有登录方法.通过这种方式,我可以构建一个页面库,其中包含所有常用功能,以便在多个GEB项目中使用.现在要做到这一点,每个页面必须在geb.Browser上有一个句柄,因此我现在必须在测试设置中实例化每个页面.通过这样做,我不再能够使用标准页面对象模式.
to ReviewQueuePage
assert at(ReviewQueuePage)
Run Code Online (Sandbox Code Playgroud)
上面的代码将抛出一个空指针,因为对象不再能够以静态方式访问,这意味着我必须将代码更改为
go ReviewQueuePage.url
Run Code Online (Sandbox Code Playgroud)
这将删除将该类用作页面的所有功能.
有没有人有任何解决方案来封装每个页面的数据,因为它不会导致页面采取不同的行为.
我按照本教程设置了MongoDB
http://www.littlelostmanuals.com/2011/09/spring-mongodb-type-safe-queries.html
一切都按预期工作,但现在我陷入了一个我希望能够在多个字段上查询的地方.
目前,我正在保存每种类型的存储库接口,并且可以在单个字段上搜索.
public interface StartedEventRepository extends
MongoRepository<DatablockStartedEvent, String>,
QueryDslPredicateExecutor<DatablockStartedEvent> {
}
Run Code Online (Sandbox Code Playgroud)
以下是单个参数的查询.
return startedEventRepo
.findOne(QDatablockStartedEvent.datablockStartedEvent.searchId
.eq(searchId));
Run Code Online (Sandbox Code Playgroud)
是否可以创建一个Query对象,我可以在其中说出类似于以下内容的内容.
if(someName != null){
query.where(QMyClass.name.eq(someName));
}
if(someTime != null){
query.where(QMyClass.time.eq(someTime));
}
List result = query.list();
Run Code Online (Sandbox Code Playgroud)
我试过看MongodbQuery但我无法让它工作.有任何想法吗?
我看到了一个例子http://www.mkyong.com/mongodb/spring-data-mongodb-update-document/但这使用了mongoTemplate.有没有办法通过存储库实现这一点,如果没有,它们是无用的吗?