【发布时间】:2016-07-28 09:26:49
【问题描述】:
- 我有两张图片,在单个浏览器项目中。当我点击任何图像时,它会显示一条线,简单的线。
- 我正在使用线程来增加这条线,线是给予特定图像的投票百分比,基于点击后在两个图像上绘制的百分比线 1234563
点击任意图片后想要两行,怎么办
ivImageOne.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View v) {
id = arraylist.get(position).get("user_id1");
feed_id = arraylist.get(position).get("feed_id");
Log.e("feeeeeee", feed_id);
View tempView = (View) v.getTag(R.integer.btnminusview);
Integer pos = (Integer) v.getTag(R.integer.btnminuspos);
ivRightTick = (ImageView) tempView.findViewById(R.id.ivRightTick);
ivLeftTick = (ImageView) tempView.findViewById(R.id.ivLeftTick);
ivLeftTick.setVisibility(View.GONE);
ivRightTick.setVisibility(View.VISIBLE);
vOne = (View) tempView.findViewById(R.id.vOne);
vTwo = (View) tempView.findViewById(R.id.vTwo);
mThread = new Thread() {
@Override
public void run() {
while (pStatus < pcount1) {
pStatus += 10;
handler.post(new Runnable() {
@Override
public void run() {
android.view.ViewGroup.LayoutParams params = vOne.getLayoutParams();
params.height = pStatus;
params.width = 10;
Log.d("pppppppppppppp", params.height + "");
vOne.setLayoutParams(params);
// vOne.setLayoutParams(new WindowManager.LayoutParams(1,pStatus));
if (pStatus == pcount1) {
stopThread(mThread);
}
}
});
try {
Thread.sleep(19); //thread will take approx 2.5 seconds to finish
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
mThread2 = new Thread() {
@Override
public void run() {
while (pStatus2 > MIN_VALUE) {
pStatus2 += 10;
handler2.post(new Runnable() {
@Override
public void run() {
android.view.ViewGroup.LayoutParams params = vTwo.getLayoutParams();
params.height = pStatus;
params.width = 10;
Log.d("pppppppppppppp", params.height + "");
vTwo.setLayoutParams(params);
// vOne.setLayoutParams(new WindowManager.LayoutParams(1,pStatus));
if (pStatus2 == pcount2) {
stopThread(mThread2);
}
}
});
try {
Thread.sleep(19); //thread will take approx 2.5 seconds to finish
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
mThread.start();
mThread2.start();
}
});
ivFeedImageTwo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// giveVote(2);
id = arraylist.get(position).get("user_id2");
feed_id = arraylist.get(position).get("feed_id");
View tempView = (View) v.getTag(R.integer.btnminusview);
Integer pos = (Integer) v.getTag(R.integer.btnminuspos);
ivLeftTick = (ImageView) tempView.findViewById(R.id.ivLeftTick);
ivRightTick = (ImageView) tempView.findViewById(R.id.ivRightTick);
ivLeftTick.setVisibility(View.VISIBLE);
ivRightTick.setVisibility(View.GONE);
vOne = (View) tempView.findViewById(R.id.vOne);
vTwo = (View) tempView.findViewById(R.id.vTwo);
mThread = new Thread() {
@Override
public void run() {
while (pStatus < pcount2) {
pStatus += 10;
handler.post(new Runnable() {
@Override
public void run() {
android.view.ViewGroup.LayoutParams params = vTwo.getLayoutParams();
params.height = pStatus;
params.width = 10;
Log.d("pppppppppppppp", params.height + "");
vTwo.setLayoutParams(params);
// vOne.setLayoutParams(new WindowManager.LayoutParams(1,pStatus));
if (pStatus == pcount2) {
stopThread(mThread);
}
}
});
try {
Thread.sleep(19); //thread will take approx 2.5 seconds to finish
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
mThread2 = new Thread() {
@Override
public void run() {
while (pStatus2 > MIN_VALUE) {
pStatus2 += 10;
handler2.post(new Runnable() {
@Override
public void run() {
android.view.ViewGroup.LayoutParams params = vOne.getLayoutParams();
params.height = pStatus;
params.width = 10;
Log.d("pppppppppppppp", params.height + "");
vOne.setLayoutParams(params);
// vOne.setLayoutParams(new WindowManager.LayoutParams(1,pStatus));
if (pStatus2 == pcount1) {
stopThread(mThread2);
}
}
});
try {
Thread.sleep(19); //thread will take approx 2.5 seconds to finish
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
mThread2.start();
mThread.start();
}
});
【问题讨论】:
标签: android multithreading android-layout android-viewpager