android微信点赞ui,Android中使用PopupWindow 仿微信点赞和评论弹出
Android中使用PopupWindow仿微信点赞和评论弹出
在 Android 中, PopupWindow 是一个非常有用的控件,可以用来显示一些临时的信息或选项。今天,我们就来看看如何使用 PopupWindow 来实现微信朋友圈的点赞和评论功能。
左下角的“更多”按钮
首先,我们需要创建一个左下角的“更多”按钮。我们可以使用 Button 控件来实现这个功能。
```xml
android:layout_height="match_parent">
```
```java// MainActivity.javapublic class MainActivity extends AppCompatActivity {
private Button moreButton;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
moreButton = findViewById(R.id.more_button);
moreButton.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
// 弹出点赞和评论的 PopupWindow showPopupWindow();
}
});
}
private void showPopupWindow() {
// 创建 PopupWindow PopupWindow popupWindow = new PopupWindow(this);
popupWindow.setContentView(R.layout.popup_window_layout);
popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
// 设置 PopupWindow 的位置和大小 int xOffSet = -10;
int yOffSet = moreButton.getBottom() +20;
popupWindow.showAsDropDown(moreButton, xOffSet, yOffSet);
// 监听 PopupWindow 的点击事件 popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override public void onDismiss() {
// 关闭 PopupWindow popupWindow.dismiss();
}
});
}
}
```
弹出的点赞和评论的 PopupWindow
下面,我们需要创建一个弹出的点赞和评论的 PopupWindow。我们可以使用 LinearLayout 控件来实现这个功能。
```xml
android:layout_height="wrap_content"> android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="16sp" android:textStyle="bold" /> android:layout_height="wrap_content">
```
```java// MainActivity.javaprivate void showPopupWindow() {
// 创建 PopupWindow PopupWindow popupWindow = new PopupWindow(this);
popupWindow.setContentView(R.layout.popup_window_layout);
popupWindow.setWidth(ViewGroup.LayoutParams.WRAP_CONTENT);
popupWindow.setHeight(ViewGroup.LayoutParams.WRAP_CONTENT);
// 设置 PopupWindow 的位置和大小 int xOffSet = -10;
int yOffSet = moreButton.getBottom() +20;
popupWindow.showAsDropDown(moreButton, xOffSet, yOffSet);
// 监听 PopupWindow 的点击事件 popupWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
@Override public void onDismiss() {
// 关闭 PopupWindow popupWindow.dismiss();
}
});
// 获取 PopupWindow 中的控件 TextView title = findViewById(R.id.title);
Button likeButton = findViewById(R.id.like_button);
Button commentButton = findViewById(R.id.comment_button);
// 监听控件的点击事件 likeButton.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
// 点赞功能 Toast.makeText(MainActivity.this, "点赞成功", Toast.LENGTH_SHORT).show();
}
});
commentButton.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
//评论功能 Toast.makeText(MainActivity.this, "评论成功", Toast.LENGTH_SHORT).show();
}
});
}
```
总结
在本文中,我们使用 PopupWindow 来实现微信朋友圈的点赞和评论功能。我们首先创建了一个左下角的“更多”按钮,然后弹出了一个点赞和评论的 PopupWindow。最后,我们监听了控件的点击事件,实现了点赞和评论的功能。
参考
* [Android中使用PopupWindow仿微信点赞和评论弹出]( [PopupWindow](