我想在ListView中显示联系人的照片.当有大量联系人时,我正面临性能问题(滚动不顺畅).我正在使用ArrayAdapter的getView方法将联系人照片分配给ImageView.当不使用图像时,滚动是平滑的.
但默认的联系人应用程序滚动非常顺利.所以我的应用程序存在性能问题.
如何提高性能?请建议.
private class MyArrayListAdapter extends ArrayAdapter<ContactsBook> implements OnItemClickListener{
private ArrayList<ContactsBook> mContacts;
private Context mContext;
public MyArrayListAdapter(Context context, int textViewResourceId, ArrayList<ContactsBook> contacts) {
super(context, textViewResourceId, contacts);
mContacts= contacts;
mContext=context;
}
@Override
public View getView(int position, View converview, ViewGroup parent){
View view=converview;
ViewHolder viewHolder=new ViewHolder();
if(view==null){
LayoutInflater inflater=(LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view=inflater.inflate(R.layout.phone_row, null);
viewHolder.tvName=(TextView)view.findViewById(R.id.tvContact);
viewHolder.tvPhoneNo=(TextView)view.findViewById(R.id.tvPhoneNo);
viewHolder.qcBadge=(QuickContactBadge)view.findViewById(R.id.qContact);
view.setTag(viewHolder);
}
else
viewHolder=(ViewHolder) view.getTag();
ContactsBook cb=mContacts.get(position);
if(cb!=null){
Uri contactPhotoUri = ContentUris.withAppendedId(Contacts.CONTENT_URI,cb.getContactIndex());
BitmapDownloaderTask bdTask=new BitmapDownloaderTask(viewHolder.qcBadge);
bdTask.execute(contactPhotoUri.toString());
viewHolder.qcBadge.assignContactUri(contactPhotoUri);
viewHolder.qcBadge.setImageBitmap(framePhoto(BitmapFactory.decodeResource(getResources(), R.drawable.ic_contact_list_picture)));
viewHolder.tvName.setText(getContactDisplayName(cb.getContactIndex()));
viewHolder.tvPhoneNo.setText(getContactPhoneNo(cb.getContactIndex()));
}
return view;
}
class BitmapDownloaderTask …Run Code Online (Sandbox Code Playgroud) 到目前为止我喜欢这本书,但我遇到了练习17的问题.它不会运行:
neil@neil-K52F:~/python$ python ex17.py ex17from.txt ex17to.txt
File "ex17.py", line 8
indata input.read()
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
这本书让我创建了一个名为的变量input.这是一个合法的变量名称吗?
我有以下用于渲染而没有任何警告的视图:
#listing
-if flash[:notice]
.success
=flash[:notice]
.input-container
-form_for @user do |f|
=f.error_messages
=render :partial => 'form', :locals => {:f => f}
Run Code Online (Sandbox Code Playgroud)
但是现在当我通过运行功能测试来渲染视图时,我收到以下警告:
弃用警告: - 不推荐使用样式块助手.请使用=.
有谁知道这个警告意味着什么?
我正在尝试为我的C/C++/C#/ Java/D类编程语言编写一个扫描程序,这是我出于个人原因设计的.为此,我正在使用Ragel生成扫描仪.我很难理解许多操作员何时触发行动,可能是因为我的学者专注于实践知识而不是理论,而且大量的这种非确定性/确定性有限自动机业务正好在我脑海中.我发现文档要么缺乏,要么我对它的理解是如此.我假设后者.
无论如何,我正在从基础开始.我在第一次迭代中发现了几个关键字和特殊字符.现在我遇到了所有关键字都被扫描为标识符的问题.我正在使用扫描仪操作符来处理我的所有关键字,因为这解决了我的字符串returns被扫描为return和returns关键字的问题.
如何正确扫描标识符?我理解为了使这个确定性,我需要有效地指定lexeme只能是一个identifier如果它不匹配其他令牌的模式.原谅我缺乏知识.
Ragel脚本:
%%{
Identifier = (alpha | '_') . (alnum | '_')*;
action IdentifierAction
{
std::cout << "identifier(\"";
std::cout.write(ts, te - ts);
std::cout << "\")";
}
}%%
%%{
main :=
|*
Interface => InterfaceAction;
Class => ClassAction;
Property => PropertyAction;
Function => FunctionAction;
TypeQualifier => TypeQualifierAction;
OpenParenthesis => OpenParenthesisAction;
CloseParenthesis => CloseParenthesisAction;
OpenBracket => OpenBracketAction;
CloseBracket => CloseBracketAction;
OpenBrace => OpenBraceAction;
CloseBrace => CloseBraceAction;
Semicolon => SemicolonAction;
Returns => …Run Code Online (Sandbox Code Playgroud) 我有兴趣在一些新技术下开发,我正在考虑尝试CUDA.现在......他们的文档太技术性,无法提供我正在寻找的答案.另外,我想听听那些已经有过CUDA经验的人的答案.
基本上我的问题是标题中的问题:
什么是CUDA?(它是一个框架吗?还是一个API?什么?)
它是为了什么?(还有什么不仅仅是编程到GPU?)
它是什么样的?
针对CUDA编程而不是编程到CPU有什么好处?
使用CUDA开始编程的好地方是什么?
我有一个按钮.它似乎有底部填充我无法摆脱:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Foo"/>
Run Code Online (Sandbox Code Playgroud)
在资源编辑器中,我可以单击按钮,然后在那里看到按钮底边下方的填充.这似乎阻止我在父RelativeLayout中垂直居中按钮.

我尝试设置padding = 0dip和layout_margin = 0dip,没有效果.底部填充持续存在.
谢谢
我找到了一个关于如何在数据存储区中存储png 的示例:
img = images.Image(img_data)
# Basically, we just want to make sure it's a PNG
# since we don't have a good way to determine image type
# through the API, but the API throws an exception
# if you don't do any transforms, so go ahead and use im_feeling_lucky.
img.im_feeling_lucky()
png_data = img.execute_transforms(images.PNG)
img.resize(60, 100)
thumbnail_data = img.execute_transforms(images.PNG)
Picture(data=png_data,
thumbnail_data=thumbnail_data).put()
Run Code Online (Sandbox Code Playgroud)
这段代码对我来说很混乱,但它适用于png.但是,我应该怎么做才能存储所有最常见的格式(jpg,gif,tiff等)?
我试图在我们的一个生产环境中重现某些行为.虽然这有点过分,但我知道在我们的生产环境中,系统使用的是"-server"版本的JVM(因为它们是服务器盒).我想验证那里没有什么奇怪的东西,并且想确保我的测试环境使用相同的标志.我怎样才能验证本地JVM是否正在使用该标志 - 即不是以"-client"启动?我可以查看系统属性吗?还是要寻找一些行为?
问题很清楚,我的google-和cplusplus.com/reference-fu让我失望了.
例如在句子中:"这告诉谷歌如何索引页面"在宏观方案中,页面的索引是什么意思.为什么页面会有'索引'.它有用的是什么?