バックグラウンドスレッドの特定のイベントで、画面の下部にバーを表示する必要があるという要件があります。また、クリック可能である必要があります。
トーストを表示することを検討できますが、トーストはクリックできません。これはどのように行うことができますか?2.1
で開発中
2097 次
3 に答える
2
それはあなたにとって役立つかもしれません。レイアウトファイルにこれを書いてください
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:gravity="bottom"
android:paddingLeft="5px"
android:paddingTop="5px"
android:paddingRight="5px">
<packagename.TransparentPanel
android:id="@+id/transparent_panel"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="5px"
android:paddingLeft="5px"
android:paddingBottom="5px"
android:paddingRight="5px">
<Button android:id="@+id/button_click_me"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click Me!"/>
</packagename.TransparentPanel>
パッケージにTransparentPanelを作成します
public class TransparentPanel extends LinearLayout
{
private Paint innerPaint, borderPaint ;
public TransparentPanel(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public TransparentPanel(Context context) {
super(context);
init();
}
private void init() {
innerPaint = new Paint();
innerPaint.setARGB(225, 75, 75, 75);
innerPaint.setAntiAlias(true);
borderPaint = new Paint();
borderPaint.setARGB(255, 255, 255, 255);
borderPaint.setAntiAlias(true);
borderPaint.setStyle(Style.STROKE);
borderPaint.setStrokeWidth(2);
}
public void setInnerPaint(Paint innerPaint) {
this.innerPaint = innerPaint;
}
public void setBorderPaint(Paint borderPaint) {
this.borderPaint = borderPaint;
}
@Override
protected void dispatchDraw(Canvas canvas) {
RectF drawRect = new RectF();
drawRect.set(0,0, getMeasuredWidth(), getMeasuredHeight());
canvas.drawRoundRect(drawRect, 5, 5, innerPaint);
canvas.drawRoundRect(drawRect, 5, 5, borderPaint);
super.dispatchDraw(canvas);
}
}
必要な場所にこれを設定します。
于 2011-09-01T10:04:18.357 に答える
1
ダイアログを表示して、de android:backgroundをに変更できますandroid:background="@android:drawable/toast_frame"
同じスタイルが必要な場合は、トーストを背景にしたレイアウトを使用して、ボタンからレイアウトを拡大するアニメーションを適用できます。
于 2011-09-01T10:03:53.317 に答える
0
現在のアクティビティに加えて、通知用のPopupWindowを表示します。Googleで見つけました。返信ありがとうございます。
于 2011-09-01T11:04:52.500 に答える