我正在尝试扩展一个ImageView,它可以缩放我可以在GalleryView中显示的Drawable.除了没有应用ImageView的属性之外,我的代码来扩展视图似乎工作正常.具体来说,膨胀的ImageView没有我通过XML中的android:layout params为它设置的宽度/高度.
有人能告诉我我做错了什么吗?
我想在dp中设置图像的宽度/高度,以便在多个屏幕dpis上设置正确的大小并支持Android 1.5+.结果我不能使用类似的东西:
i.setLayoutParams(new Gallery.LayoutParams(150, 116)
Run Code Online (Sandbox Code Playgroud)
我的布局定义是:
<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="150dp" android:layout_height="116dp"
android:background="@drawable/gallery_item_background"
android:scaleType="fitXY" />
</ImageView>
Run Code Online (Sandbox Code Playgroud)
我用来给ImageView充气的片段是:
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = getLayoutInflater();
ImageView i = (ImageView) inflater.inflate(R.layout.gallery_item, null);
i.setImageResource(mImageIds.get(position));
i.setScaleType(ImageView.ScaleType.FIT_XY);
return i;
}
Run Code Online (Sandbox Code Playgroud) 我想知道为什么
Prelude> head $ reverse $ [1..10000000] ++ [99]
99
Run Code Online (Sandbox Code Playgroud)
不会导致堆栈溢出错误.前奏中的++似乎是直接的,非尾递归的:
(++) :: [a] -> [a] -> [a]
(++) [] ys = ys
(++) (x:xs) ys = x : xs ++ ys
Run Code Online (Sandbox Code Playgroud)
编辑:最初,我认为这个问题与前奏中定义的++的方式有关,特别是对于重写规则,因此问题继续如下.讨论向我表明情况并非如此.我现在认为一些懒惰的评估效果导致代码在没有堆栈溢出的情况下运行,但我不太明白如何.
所以就这样,它会遇到堆栈溢出,对吧?所以我认为它可能与遵循++定义的ghc魔法有关:
{ - #RULES"++"[~1] forall xs ys.xs ++ ys = augment(\ cn - > foldr cn xs)ys# - }
*这有助于避免堆栈溢出吗?有人可以提供一些暗示这段代码中发生了什么吗?**
Adobe Air(2.0)如何检查文件夹是否存在?(如Windows上的文件夹C:\ Program Files(x86))(需要代码示例)
我有2个样本可以有效地做同样的事情 - 样本1:
command.Parameters.Add(ParamFoo, SqlDbType.Int)
command.Parameters(ParamFoo).Value = fooVal
Run Code Online (Sandbox Code Playgroud)
样本2:
command.Parameters.AddWithValue(ParamBar, barVal)
Run Code Online (Sandbox Code Playgroud)
建议使用哪种样品?我知道第二个样本正在进行一些转换.不要求转换并使用第一个样本不是最好的吗?
文件通常保存在浏览器的缓存中多长时间?我想知道普通人群 - 我需要多长时间才能确定大多数人的缓存会重新获取文件?
我已经环顾了很多,我发现从Bitmap创建Texture2D的唯一方法是:
using (MemoryStream s = new MemoryStream())
{
bmp.Save(s, System.Drawing.Imaging.ImageFormat.Png);
s.Seek(0, SeekOrigin.Begin);
Texture2D tx = Texture2D.FromFile(device, s);
}
Run Code Online (Sandbox Code Playgroud)
和
Texture2D tx = new Texture2D(device, bmp.Width, bmp.Height,
0, TextureUsage.None, SurfaceFormat.Color);
tx.SetData<byte>(rgbValues, 0, rgbValues.Length, SetDataOptions.NoOverwrite);
Run Code Online (Sandbox Code Playgroud)
其中rgbValues是一个字节数组,包含32位ARGB格式的位图像素数据.
我的问题是,我可以尝试更快的方法吗?
我正在编写一个地图编辑器,它必须读取自定义格式图像(地图图块)并将它们转换为Texture2D纹理才能显示.以前版本的编辑器是一个C++实现,它首先将图像转换为位图,然后转换为使用DirectX绘制的纹理.我在这里尝试了相同的方法,但是上述两种方法都非常慢.要加载到内存中,映射所需的所有纹理都需要第一个方法~250秒,而第二个方法在合理的规格计算机上需要110秒(为了比较,C++代码需要大约5秒钟).如果有一种方法可以直接编辑纹理数据(例如使用Bitmap类'
任何帮助将非常感谢.
谢谢
如何在PHP的echo函数中使用引号?
echo "<script type="text/javascript">";
Run Code Online (Sandbox Code Playgroud)
不好用.
谢谢!
在C#中,我可以这样写:
using (new MyDisposableClass().MethodA());
Run Code Online (Sandbox Code Playgroud)
分号会显示编译器警告,指出可能出错的空语句.我没有运行上面的代码,但仍然不会调用该方法?
这种编码惯例有什么用途?我在这里看到了另一个关于此问题的线索,但我要求现在存在差异/因此有不同的回复.
谢谢
有没有办法做到这一点?我正在编写一个与网站交互作为内容脚本的扩展程序,并使用localstorage保存数据.是否有可用于测试此行为的工具,框架等?我意识到有一些用于测试javascript的通用工具,但是那些足以测试扩展的能力吗?单元测试是最重要的,但我也对其他类型的测试(例如集成测试)感兴趣.
我正在尝试使用这个方法在这里提到的文件名之后命名一个lua包,但是_REQUIREDNAME
从未定义过.例如,我有这两个文件
samplePackage.lua:
print("_REQUIREDNAME: ", _REQUIREDNAME)
return nil;
Run Code Online (Sandbox Code Playgroud)
packageTest.lua:
require "samplePackage"
Run Code Online (Sandbox Code Playgroud)
当我运行packageTest.lua时,它会输出 > _REQUIREDNAME: nil
我也在Lua 5.1 Refrence手册中找不到_REQUIREDNAME的提及,所以这是从语言中删除了,还是我遗漏了什么?
c# ×3
adobe ×1
air ×1
android ×1
bitmap ×1
directory ×1
echo ×1
filesystems ×1
galleryview ×1
ghc ×1
haskell ×1
imageview ×1
lua ×1
packages ×1
php ×1
sql-server ×1
texture2d ×1
unit-testing ×1
xna ×1