I have a widget which starts an activity when it is clicked. I'd like to have some kind of fancy animation to display this activity, rather than the standard scroll-from-right of Android. I'm having problems setting it, though. This is what I have:
slide_top_to_bottom.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">
<translate android:fromYDelta="-100%" android:toXDelta="0" android:duration="100" />
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="50" />
</set>
Run Code Online (Sandbox Code Playgroud)
...在anim.xml中引用
<?xml version="1.0" encoding="utf-8"?>
<layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android"
android:delay="50%"
android:animation="@anim/slide_top_to_bottom" />
Run Code Online (Sandbox Code Playgroud)
但那我从哪里参考呢?我已经尝试了我要插入的活动的基本元素,以及清单中的activitiy条目,两次都是
android:layoutAnimation="@+anim/anim"
Run Code Online (Sandbox Code Playgroud)
我可能做错了.任何帮助深表感谢!
默认情况下,在Android 3.0+中,当调用ActionBar.hide()/ show()时,条形图会以简短的淡入/淡出动画进行动画处理.
此列表中似乎没有与动画资源关联的XML样式属性.
有没有办法改变这个动画?在我的情况下,我只是想改变动画时间,但是也可以有滑动动画吗?
android android-animation android-3.0-honeycomb android-actionbar
我有一个企业分布式应用程序,它使用xcodebuild构建在构建服务器上.去年我们进行了更改,使用"自动管理签名"功能和"-allowProvisioningUpdates"标志.使用此技术可以很好地生成配置文件,但是我们使用此配置文件可以使用一年,并且会在31天后到期.
最初我的印象是使用"allowProvisioningUpdates"将导致在每个新构建上重新生成供应配置文件,但如果是这样的话,它将不会过期.我们需要使用更新的配置文件进行新的构建,以便我们的用户在几个月的时间内不会丢失应用程序.但是,生成的配置文件未显示在Apple开发人员中心的"证书,标识符和配置文件"部分中,我找不到任何方法强制Xcode或xcodebuild生成新的配置文件.我如何强制这样做以确保我们的用户没有停机时间?配置文件最终到期后会发生什么?
我已经生成了一个本机库ndk-build,我可以在我的Android应用程序中加载和使用它.但是,我想针对我的应用程序的这一部分编写一些测试.
在我的测试中调用本机函数时,我收到此异常消息:
java.lang.UnsatisfiedLinkError: no process in java.library.path
Run Code Online (Sandbox Code Playgroud)
... process我要导入的本地库在哪里命名libprocess.so.
我正在使用Roboelectric进行测试,并运行这个特殊的测试RobolectricTestRunner,如果它有所作为.
如何让我的测试项目"看到"本机库?
编辑: 我正在我的应用程序中加载库,如下所示:
static {
System.loadLibrary("process");
}
public static native int[] process(double[][] data);
Run Code Online (Sandbox Code Playgroud)
调用Process.process(array)在应用程序中正常工作(库已加载),但在从上面给出的异常的测试运行时失败.
编辑2:
如果我设置-Djava.library.path="<the directory of libprocess.so>"为VM参数,则:
System.out.println(System.getProperty("java.library.path"));
Run Code Online (Sandbox Code Playgroud)
确实显示了我设置的路径,但我仍然得到相同的异常.我将目录设置为:
<project-name>/libs/x86
Run Code Online (Sandbox Code Playgroud)
......但作为一条绝对的道路.
我UINavigationController在iOS应用扩展程序中呈现模态:
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];
nav.modalPresentationStyle = UIModalPresentationFormSheet;
nav.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:nav animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
当导航控制器出现时,其根视图控制器的UIBarButtonItems跳转位置:

我正在创建和添加按钮viewDidLoad.它们只是标准的条形按钮项:
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(done)];
Run Code Online (Sandbox Code Playgroud)
我没有压倒viewDidAppear(这似乎是按钮跳跃的点).
从我的应用程序中呈现相同的导航控制器/根视图控制器,而不是应用程序扩展,不会给我同样的问题.有任何想法吗?
uinavigationbar uikit uinavigationcontroller ios8 ios-app-extension
我在iOS 8中遇到动态大小的tableViewCell问题.虽然它在视觉上看起来很好,但我得到了带有AutoLayout错误的日志输出.我把它简化为这个简单的例子.
我正在为我的手机添加一个UILabel:
self.titleLabel = [[UILabel alloc] init];
self.titleLabel.translatesAutoresizingMaskIntoConstraints = NO;
self.titleLabel.numberOfLines = 0;
self.titleLabel.lineBreakMode = NSLineBreakByWordWrapping;
[self.contentView addSubview:self.titleLabel];
Run Code Online (Sandbox Code Playgroud)
我在代码中创建我的自动布局的限制,采用砌体中updateConstraints:
[self.titleLabel setContentCompressionResistancePriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisVertical];
[self.titleLabel updateConstraints:^(MASConstraintMaker *make) {
make.leading.equalTo(self.contentView.leading).with.offset(padding.left);
make.trailing.equalTo(self.contentView.trailing).with.offset(-padding.right);
make.top.equalTo(self.contentView.top).with.offset(padding.top);
make.bottom.equalTo(self.contentView.bottom).with.offset(-padding.bottom / 2);
}];
Run Code Online (Sandbox Code Playgroud)
(我可以用make.edges一步完成,但问题是一样的)
这最初看起来很好.然后,当我对tableview执行任何修改并调用[tableView endUpdates](可能是触发updateContraints)时,我在控制台日志中得到以下内容:
Unable to simultaneously satisfy constraints.
Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you …Run Code Online (Sandbox Code Playgroud) 我对Javascript毫无希望.这就是我所拥有的:
<script type="text/javascript">
function beginrefresh(){
//set the id of the target object
var marquee = document.getElementById("marquee_text");
if(marquee.scrollLeft >= marquee.scrollWidth - parseInt(marquee.style.width)) {
marquee.scrollLeft = 0;
}
marquee.scrollLeft += 1;
// set the delay (ms), bigger delay, slower movement
setTimeout("beginrefresh()", 10);
}
</script>
Run Code Online (Sandbox Code Playgroud)
它滚动到左边但我需要它相对无缝地重复.目前它只是跳回到开头.这可能不是我做的方式,如果没有,任何人都有更好的方法?
我有一个表单,我从我从Web服务收到的数据动态生成.此Web服务提供了在创建输入元素时需要使用的图像.我很难设定progressDrawable一个RatingBar.虽然XML我能够使用以下内容应用自定义图像progressDrawable:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+android:id/background" android:drawable="@drawable/custom_star" />
<item android:id="@+android:id/secondaryProgress" android:drawable="@drawable/custom_star" />
<item android:id="@+android:id/progress" android:drawable="@drawable/custom_star" />
</layer-list>
Run Code Online (Sandbox Code Playgroud)
其中custom_star是一个简单的.png图像,并且具有@android:style/Widget.RatingBarRatingBar样式.这很好用:

但我想custom_star动态改变.
在代码中,我尝试直接使用位图设置进度drawable:
Drawable d = new BitmapDrawable(getResources(), downloadedImage);
ratingBar.setProgressDrawable(d);
Run Code Online (Sandbox Code Playgroud)
并通过构建layer-list:
LayerDrawable layerDrawable = new LayerDrawable(new Drawable[] {
getResources().getDrawable(R.drawable.custom_star),
getResources().getDrawable(R.drawable.custom_star),
getResources().getDrawable(R.drawable.custom_star)
});
layerDrawable.setId(0, android.R.id.background);
layerDrawable.setId(1, android.R.id.secondaryProgress);
layerDrawable.setId(2, android.R.id.progress);
ratingBar.setProgressDrawable(layerDrawable);
Run Code Online (Sandbox Code Playgroud)
对我来说都不适用; 两者都会导致custom_star出现一次拉伸,拉伸的尺寸为RatingBar:

有任何想法吗?
更新:
Luksprog在下面的回答有所改进,但我仍有一些问题.现在,星形drawable没有被拉伸,并且可以通过触摸设置值,但是如果选择3/5则显示为:

和5/5选择:

我相信图像的缩放可以通过一些调整来修复,但令人讨厌的是,secondaryProgress可绘制的东西似乎没有设置 - 用于灰色未选择的星星的可绘制.没有它,它不是很有用.
我有一个tableview单元格,其视图从一个笔尖加载,其子视图使用AutoLayout进行约束.我正在使用iOS 8的自调整大小功能.在第一次显示时,单元格如下所示:

绿色视图与蓝色和灰色视图之间的边距比我预期的要大.如果我向下滚动视图以便创建更多单元格,或者如果我在tableview上调用reloadData,那么我会得到正确的结果:

就好像单元格子视图的大小不正确,直到第二个布局通过.我怎么能绕过这个?我已经看到了一些职位,建议设置setPreferredMaxLayoutWidth的layoutSubviews,就像这样:
-(void)layoutSubviews
{
[super layoutSubviews];
[self.redLabel setPreferredMaxLayoutWidth:[self.titleLabel bounds].size.width];
[self.greenLabel setPreferredMaxLayoutWidth:[self.extendedLabel bounds].size.width];
[self.blueLabel setPreferredMaxLayoutWidth:[self.dateLabel bounds].size.width];
[self.grayLabel setPreferredMaxLayoutWidth:[self.tagsLabel bounds].size.width];
[super layoutSubviews];
}
Run Code Online (Sandbox Code Playgroud)
......但似乎没有效果.
我的约束似乎没有任何歧义,但由于它们是在.nib中设置的,我不知道如何在这里发布它们.
所以我将蓝色/灰色视图的顶部空间设置为> =绿色视图的底部,+ 3.这实际上是我得到的,因为空间更大.
但是,如果我将关系设置为==,我会得到一个不同的视觉错误,其中红色标签的大小不正确,因为它包含的文本数量:

不确定我是否应该开始一个新问题,但这是同样的问题.
在编辑1中仍然存在布局的反复出现的问题.除了视觉问题,当我的tableview中的单个单元格发生变化时,它会导致可怕的效果.整个列表似乎会崩溃并重新加载.此外,我记录以下自动布局错误:
Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints …Run Code Online (Sandbox Code Playgroud) 我想将文本图像分成它的组成字符,也作为图像.例如,使用下面的示例,我最终会得到14张图像.
我只会在一行上使用文字,所以y高度并不重要 - 我需要找到的是每个字母的开头和结尾以及裁剪到那些坐标.这样我也可以避免'i','j'等问题.
我是图像处理的新手,我不知道如何去做.某种形式的边缘检测?有没有办法确定纯色的连续区域?任何帮助都很棒.
试图提高我的Python技能和熟悉一些可用的库,所以我使用的是Python Imaging Library(PIL),但我也看过OpenCV.
示例图片:

/编辑:感谢您的帮助到目前为止,但是我没有任何解决方案来获取样本输入并提供样本输出.我的描述并不是最清楚的,对不起.
我有一个由二进制数据组成的数组.我想要做的是确定每个不间断的1或0段的长度.
说我有这样的数据:
0111010001110
Run Code Online (Sandbox Code Playgroud)
在binaryArray我需要翻译成的数组中:
0100110
Run Code Online (Sandbox Code Playgroud)
存储在nwArray其中,0代表一个窄(小于3位长),并1表示宽(> 3位长).我不关心二进制值,而是关注每个组件的长度.我不确定这种解释是否有意义.
这就是我的意思; 它不起作用,我明白为什么,但我想不出一个好的解决方案.
for(x=0;x<1000;x++){
if(binaryArray[x]==binaryArray[x+1]){
count++;
if(count>=3){
nwArray[y]=1;
y++;
count=0;
}
}else{
if(barcodeArray[x]){
nwArray[y]=0;
}
}
}
Run Code Online (Sandbox Code Playgroud) android ×4
ios ×3
ios8 ×3
autolayout ×2
uitableview ×2
android-ndk ×1
animation ×1
arrays ×1
c ×1
html ×1
java ×1
javascript ×1
junit ×1
marquee ×1
objective-c ×1
python ×1
ratingbar ×1
uikit ×1
xcode ×1
xcodebuild ×1