我以前做过菜单,所以我不是一个完整的新手,但是我遇到了一个问题,Eclipse告诉我必须删除@Override,但很明显,如果我这样做,那么我的代码将不会运行以使菜单膨胀.代码是:
@Override
public boolean OnCreateOptionsMenu(Menu menu){
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.map_menu, menu);
return super.onCreateOptionsMenu(menu);
}
Run Code Online (Sandbox Code Playgroud) 即使在阅读RFC并查看c和javascript实现之后,我也很难理解inflate算法的工作原理.我使用文本"TestingTesting"压缩了一个文件,并以十六进制获得了以下结果:0B 49 2D 2E C9 CC 4B 0F 81 50 00
我尝试在16位和32位字节序交换后读取数据,但在读取前3位后我无法再进一步,因为接下来的5位没有意义.我做错了什么,如何解析?
我使用过的参考资料:RFC 1951 Javascript C.
我试图在.NET中使用INFLATE压缩流DeflateStream
.InvalidDataException
虽然我知道我传递的数据已经被DEFLATE算法正确处理(它已经过测试),但是我的代码抛出了一个.我使用DeflateStream
不正确吗?我的代码如下:
public byte[] Inflate(byte[] deflateArr)
{
MemoryStream ms;
// try to create a MemoryStream from a byte array
try
{
ms = new MemoryStream(deflateArr);
}
catch (ArgumentNullException)
{
return null;
}
// create a deflatestream and pass it the memory stream
DeflateStream ds;
try
{
ds = new DeflateStream(ms, CompressionMode.Decompress);
}
catch (ArgumentNullException)
{
return null;
}
catch (ArgumentException)
{
return null;
}
// create a bytes array and read into it
byte[] bytes …
Run Code Online (Sandbox Code Playgroud) 我是android的新手.
这是我的xml文件 -
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:id="@+id/linearlayout"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
android:id="@+id/textview" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
和非常基本的代码 -
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View view=getLayoutInflater().inflate(R.layout.activity_main,null);
//setContentView(view);
LinearLayout ly = (LinearLayout)findViewById(R.id.linearlayout);
Log.i("System.out ","linear layout = " + view);
Log.i("System.out ","linear layout = " + ly);
}
Run Code Online (Sandbox Code Playgroud)
输出:
05-10 11:44:15.996: I/System.out(6494): linear layout = android.widget.LinearLayout@41e34db8
05-10 11:44:15.996: I/System.out(6494): linear layout = null
Run Code Online (Sandbox Code Playgroud)
findViewById()
正在返回null?为什么?
如果我取消注释setContentView(view)
并再次运行..
输出:
05-10 11:50:12.781: I/System.out(7791): linear layout = android.widget.LinearLayout@41e0d6c8
05-10 11:50:12.781: I/System.out(7791): …
Run Code Online (Sandbox Code Playgroud) 我在页面中有一个大数据,需要发布到服务器.
所以我使用https://github.com/dankogai/js-deflate来缩小大数据.
看来工作正常.
helloworld - > w4tIw43DicOJL8OPL8OKSQEA
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Demo</title>
</head>
<body>
<h1>Demo</h1>
<p>$Id: demo.html,v 0.4 2013/04/09 14:25:38 dankogai Exp dankogai $</p>
<dl>
<dt>Inflated + Base64-Decoded (Original):</dt>
<dd><textarea id="inflated" cols="64" rows="16" onkeyup="(function(that, dst){
setTimeout(function(){
dst.value = Base64.toBase64(RawDeflate.deflate(Base64.utob(that.value)));
},0)
})(this,$('deflated'))"></textarea></dd>
<dt>Deflated + Base64-Encoded (Compressed):</dt>
<dd><textarea id="deflated" cols="64" rows="16" onkeyup="(function(that, dst){
setTimeout(function(){
dst.value = Base64.btou(RawDeflate.inflate(Base64.fromBase64(that.value)));
},0);
})(this, $('inflated'))"></textarea></dd>
</dl>
<script src="./base64.js"></script>
<script src="../rawinflate.js"></script>
<script src="../rawdeflate.js"></script>
<script>
$ = function(id){ return document.getElementById(id) };
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
所以我希望通过将deflate的结果放入我得到错误的java代码来得到hellowold: …
我正在尝试使用zlib解压缩zip文件(不使用任何扩展或第三方).最初,src_len是48756255,dest_len是49209890.在while循环中第一次传递很好:err是Z_OK,第二次传递开始.在第二遍,无论我做什么,我都会从膨胀中获得Z_BUF_ERROR.此时stream.total_out是49034460,所以有一点剩余,但第二遍的stream.avail_in为0.无论如何,我希望膨胀给我Z_STREAM_END.我真的不知道发生了什么,有人可以帮忙吗?
void compression::uncompress2(char* dest, unsigned dest_len, char* src, unsigned src_len) {
TempAllocator ta;
z_stream_s stream = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
stream.next_in = (Bytef*)src;
stream.avail_in = (uInt)src_len;
stream.next_out = (Bytef*)dest;
stream.avail_out = (uInt)dest_len;
stream.zalloc = zalloc;
stream.zfree = zfree;
stream.opaque = &ta;
// no header
int err = inflateInit2(&stream, -MAX_WBITS);
XENSURE(err == Z_OK);
bool done = false;
while (!done) {
stream.next_out = (Bytef*)(dest + stream.total_out);
stream.avail_out = dest_len - stream.total_out;
err …
Run Code Online (Sandbox Code Playgroud) 我使用 zLib 1.2.7,取自此处。我已在 Microsoft Visual Studio 2010 中将其编译为静态库并将其添加到我的项目中。
我需要解压缩一些用 deflate 算法压缩的二进制数据。这里是:
unsigned char rawData[114] =
{
0x00, 0x00, 0x00, 0x00, 0x15, 0x82, 0x05, 0x9D, 0x62, 0x91, 0x9A, 0x86, 0x26, 0xF3, 0x45, 0xBF,
0xE1, 0x69, 0x19, 0xA8, 0x80, 0x21, 0x08, 0x43, 0xF1, 0xEF, 0xCC, 0x01, 0x68, 0x4E, 0x3C, 0x06,
0x59, 0x6D, 0x90, 0xB2, 0x1F, 0xC3, 0x87, 0xC2, 0xBF, 0xC0, 0x90, 0xBE, 0x1F, 0x11, 0xB6, 0xD7,
0xB7, 0x06, 0x18, 0x32, 0x5F, 0x80, 0x8F, 0x09, 0xF1, 0x81, 0xF2, 0xB8, 0xC8, 0x9E, …
Run Code Online (Sandbox Code Playgroud)