我有一个包含自定义控件的列表视图,
我的自定义控件中有进度条,我想更改进度条的值。
int iRowCount = 0;
CMessage processMessage = null;
for (CMessage msg : m_msgList)
{
iRowCount ++;
if(msg._id == iMessageId)
{
processMessage = msg;
break;
}
}
if(processMessage == null)
return;
if(!processMessage.MessageType.equals(AttachType.Video.name()))
if(!processMessage.MessageType.equals(AttachType.Audio.name()))
return;
int rowPosition = iRowCount;
View v = lstMessage.getChildAt(rowPosition);
View updateView = lstMessage.getAdapter().getView(rowPosition - 1, v, lstMessage);
ILSpeechBubble sBubble = (ILSpeechBubble) updateView.findViewById(R.id.iLSpeechBubble1);
if(sBubble.getMessageId() == iMessageId)
{
iProgress = sBubble.getProgress();
if(iProgress == 100)
m_Downloading = false;
else
iProgress += 1;
sBubble.SetProgress(iProgress);
sBubble.postInvalidate();
updateView.postInvalidate();
}
使用此代码,我可以获得必须更改进度值的行,
但我无法刷新布局,并且进度在 ui 中未更改,
但是当我滚动列表视图时,进度值已更改。!
而且我不想使用 notifydatasetchanged()。
tnx 4 任何帮助