我将Button定义如下:
<Button
android:drawableTop="@drawable/ico"
android:gravity="center"
android:id="@+id/StartButton2x2"
android:text="@string/Widget2x2StartBtnLabel"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:background="@drawable/widgetbtn_bg"
/>
Run Code Online (Sandbox Code Playgroud)
问题是'drawableTop'图像与Button视图的顶部边框对齐.我想将它(与文本标签一起)垂直放在按钮上.
'android:gravity'似乎只适用于文本标签.它不会影响'drawableTop'定位.
我能够使用'android:paddingTop'垂直居中 - 但这似乎不是一个好主意.我猜它在不同的屏幕分辨率/大小上无法正常工作.
我编写的Mac OS X应用程序正在使用macbook内置的facetime相机拍摄照片.
在MacBookAir3,2,MacBookPro8,2和MacBookPro10,2上工作正常,但在新的MacBook上它需要"黑暗"的照片.我理解这是因为自动曝光,但我很难让它工作.该AVCaptureDevice adjustingExposure设置为NO,但所拍摄的照片仍然是完全黑暗的.
代码:setupCamera在应用启动期间调用一次
-(void) setupCamera
{
session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPresetPhoto;
sessionInitialized = YES;
device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
[device lockForConfiguration:NULL];
if ([device isExposureModeSupported:AVCaptureExposureModeContinuousAutoExposure])
[device setExposureMode:AVCaptureExposureModeContinuousAutoExposure];
if ([device isFocusModeSupported:AVCaptureFocusModeContinuousAutoFocus])
[device setFocusMode:AVCaptureFocusModeContinuousAutoFocus];
if ([device isWhiteBalanceModeSupported:AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance])
[device setWhiteBalanceMode:AVCaptureWhiteBalanceModeContinuousAutoWhiteBalance];
[device unlockForConfiguration];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
if(error != nil) {
// ...
}
if([session canAddInput:input]) {
[session addInput:input];
} else {
// ...
}
output = [[AVCaptureStillImageOutput …Run Code Online (Sandbox Code Playgroud) 我们正在为汽车司机开发iPhone GPS应用程序.
您可能知道,iOS4引入了多任务处理,因此我们的应用程序可以在后台运行 - 事实就是如此.这是其功能的一部分.
问题在于在iOS4上关闭应用程序的标准方法.以下是两种情况:
1)用户想要将应用程序放到后台:
通常,在iPhone iOS4上,它就像按"主页"按钮一样简单.
2)用户想关闭应用程序(即到达目的地点后):
标准iPhone iOS4程序如下:
用户每次到达某处(例如,每天两次)都必须终止我们的申请,以节省他的电池.如果他不这样做 - GPS会很快耗尽所有电池电量.此外,我们无法在后台运行时禁用GPS,因为我们需要主要应用程序功能的精确位置信息.
当然,您无法更改应用程序中"主页"按钮的行为(即可接受AppStore).此外,我认为将预期行为改为与iPhone平台上的其他应用程序完全不同的东西并不是一个好的解决方案.
你觉得怎么样?你知道任何好的解决方案吗?我们有一个想法,但我不想向你提出任何建议.
我们的解决方案非常简单:只需在屏幕右上方显示小的"x"按钮即可.点击它会终止应用程序(可能在一些确认问题之后).
这个解决方案有一个很大的优势:它不会改变默认的系统行为 - 用户意识到iOS4多任务使用仍然可以按下"主页"按钮在后台运行应用程序并以iPhone方式关闭它.
你怎么看?
我在appwidget上有一个Button,我需要从服务中以编程方式"启用"/"禁用".
第一个想法是打电话setBoolean(R.id.buttonid, "setClickable", false)禁用它,但显然你不能setClickable远程调用.
另一个想法是从中删除文本标签rv.setTextViewText(R.id.buttonid, ""),然后删除点击处理程序rv.setOnClickPendingIntent(R.id.buttonid, null).不幸的是,传递null给它导致NullPointerException了android.app.ActivityThread.handleServiceArgs
是否有其他方法以编程方式禁用/启用appwidget按钮?我可以打电话rv.setViewVisibility(R.id.buttonid, View.GONE)完全隐藏按钮而不是禁用它.然而,这将彻底打破整个小部件布局,我想避免它.
我现在使用的解决方案是隐藏按钮setViewVisibility并显示其他空白按钮,而不是像之前那样保持appwidget布局.
呼吁setFocus(null)对ItemizedOverlay不"无焦点的"当前标记.根据文件:
...如果找不到该项,则为无操作.您还可以传递null以删除焦点.
这是我的代码:
MapItemizedOverlay
public class MapItemizedOverlay extends ItemizedOverlay<OverlayItem> {
private ArrayList<OverlayItem> items = new ArrayList<OverlayItem>();
public MapItemizedOverlay(Drawable defaultMarker) {
super(defaultMarker);
}
public void addOverlay(OverlayItem overlay) {
items.add(overlay);
populate();
}
@Override
protected OverlayItem createItem(int i) {
return items.get(i);
}
@Override
public int size() {
return items.size();
}
}
Run Code Online (Sandbox Code Playgroud)
创建地图叠加层和一个标记:
StateListDrawable youIcon = (StateListDrawable)getResources().getDrawable(R.drawable.marker_icon);
int width = youIcon.getIntrinsicWidth();
int height = youIcon.getIntrinsicHeight();
youIcon.setBounds(-13, 0-height, -13+width, 0);
GeoPoint location = new GeoPoint(40800816,-74122009);
MapItemizedOverlay overlay = new MapItemizedOverlay(youIcon);
OverlayItem …Run Code Online (Sandbox Code Playgroud) 有谁知道TEA(微小加密算法)的正确python实现?我尝试了我在这里找到的那个:http://sysadminco.com/code/python-tea/ - 但它似乎无法正常工作.
它返回的结果与C或Java中的其他实现不同.我猜这是由python中完全不同的数据类型引起的(实际上没有数据类型).
这是代码和示例:
def encipher(v, k):
y=v[0];z=v[1];sum=0;delta=0x9E3779B9;n=32
w=[0,0]
while(n>0):
y += (z << 4 ^ z >> 5) + z ^ sum + k[sum & 3]
y &= 4294967295L # maxsize of 32-bit integer
sum += delta
z += (y << 4 ^ y >> 5) + y ^ sum + k[sum>>11 & 3]
z &= 4294967295L
n -= 1
w[0]=y; w[1]=z
return w
def decipher(v, k):
y=v[0]
z=v[1]
sum=0xC6EF3720
delta=0x9E3779B9
n=32
w=[0,0]
# sum …Run Code Online (Sandbox Code Playgroud) 我有TextView和autoLink功能的问题.
我的应用程序中有一个关于屏幕的信息,例如支持电话号码,电子邮件地址,网站URL和应用程序版本,如01.01.01
在textView上设置autoLink ="all"后,所有值都链接正常 - 除了版本号01.01.01也链接为电话号码.
有没有办法从链接中排除这个文本片段?
android ×4
layout ×2
adjustment ×1
button ×1
c ×1
encryption ×1
facetime ×1
google-maps ×1
ios4 ×1
iphone ×1
macos ×1
multitasking ×1
python ×1
setfocus ×1
xml ×1