我有自定义//Initialize flag
<?php
...
$multi_prog_change_flag = '0';
...
?>
//Hidden Form Element
<form action="update_u.php" method="post" id="cForm" name="cForm" onsubmit="return validateForm()" autocomplete="off">
...
<?php echo '<input type="hidden" id="email" value="'.$email.'"> ';?>
<?php echo '<input type="hidden" id="multiprogchangeflag" name="multiprogchangeflag" value="'.$multi_prog_change_flag.'"> ';?>
...
// Drop-down Element where update is triggered
<tr id="odd">
<td><select id="programName" name="programName[]" onchange="updateflag();>" multiple="multiple" size=10>
..
<option name="drop1" value ="<?php echo $data['Program_Id'] ?>" <?php if ($data[curr_prog] == '1') echo 'selected="selected"'; ?>> <?php echo $data['Program_Name'];?></option>
..
</select>
<input type="hidden" id="pNames" name="pNames" value="" />
</td>
</tr>
// Function to update flag
function updateflag() {
<document.getElementById("multiprogchangeflag").value = "1";
}
// update_u.php PHP Action File
$multi_prog_flag=mysql_real_escape_string($_POST['multiprogchangeflag']);
if ($multi_prog_flag == '1'){
$multi_prog_delete_query=mysql_query("UPDATE multi_prog_access SET is_act = '0', Updated_by = '$updatedby', update_timestamp = NOW() WHERE user_id = '$useid'");
$count = count($multi_prog_names);
for($i=0;$i<$count;$i++){
$multi_prog_ID=$multi_prog_names[$i];
$multi_prog_update_query=mysql_query("INSERT INTO multi_prog_access (user_id, Prog_id, created_by, is_act, Update_timestamp) VALUES ('$ids','$multi_prog_ID', '$updatedby', '1', NOW())");
}
}
。在里面,我有一张图片。 WebView
是可缩放的。我想在单击按钮时重置缩放,从那里提取图像并放在WebView
内。
到目前为止,在x-code的帮助下,我设法在ImageView
中写了这个:
onClickListener
while (wv2.zoomOut()){
wv2.setDrawingCacheEnabled(true);
bitmap = Bitmap.createBitmap(wv2.getDrawingCache());
bitmapPath = bitmap;
wv2.setDrawingCacheEnabled(false);
new Thread(new Runnable() {
public void run() {
SaveImage(bitmap);
}
}).start();
tstImage.setImageBitmap(bitmap);
}
完全缩小,但我WebView
Bitmap
稍微放大了。我需要再点击一次才能获得整个ImageView
bitmap
答案 0 :(得分:0)
我会说WebView.getDrawingCache()
方法的Javadoc解释了你的问题。
public Bitmap getDrawingCache (boolean autoScale)
...
关于兼容模式下自动缩放的注意事项:自动缩放时 如果未启用,此方法将创建与此大小相同的位图 图即可。因为此位图将由父级缩放 ViewGroup,屏幕上的结果可能会显示缩放工件。 要避免 这样的工件,你应该通过设置auto来调用这个方法 缩放为真。但是,这样做会生成a的位图 不同于视图的大小。这意味着您的申请必须 能够处理这个大小。
在您的代码中,您只需进行此更改
bitmap = Bitmap.createBitmap(wv2.getDrawingCache(true));