Im разрабатывает приложение, в котором плавающий компонент должен появиться при приеме вызова, и компонент будет иметь несколько кнопок для выполнения необходимых действий. Я пробовал следовать. Я реализовал всплывающее окно, сделав основной вид деятельности полупрозрачным. Когда этот компонент всплывает, Im способен перемещать его на экране, но так как активность полупрозрачна, им не удается выполнить какое-либо другое действие .Плавающие виджеты/всплывающее окно в android
здесь вы можете видеть всплывающее окно, я могу переместить его, но я не могу прокрутить меню в фоновом режиме. Как я могу реализовать таким образом, что я могу выполнять обе операции, то есть на popupwindow и фоновом экране.
Мои коды
`public class MainActivity extends Activity {
int mCurrentX;
int mCurrentY;
private float mDx;
private float mDy;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
final View cv = new View(this);
TextView tv = new TextView(this);
tv.setBackgroundColor(0xffeeeeee);
tv.setTextColor(0xff000000);
tv.setTextSize(24);
tv.setText("click me\nthen drag me");
tv.setPadding(8, 8, 8, 8);
final PopupWindow mPopup = new PopupWindow(tv, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
OnTouchListener otl = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
int action = event.getAction();
if (action == MotionEvent.ACTION_DOWN) {
mDx = mCurrentX - event.getRawX();
mDy = mCurrentY - event.getRawY();
} else
if (action == MotionEvent.ACTION_MOVE) {
mCurrentX = (int) (event.getRawX() + mDx);
mCurrentY = (int) (event.getRawY() + mDy);
mPopup.update(mCurrentX, mCurrentY, -1, -1);
}
return true;
}
};
tv.setOnTouchListener(otl);
mCurrentX = 20;
mCurrentY = 50;
cv.post(new Runnable() {
@Override
public void run() {
mPopup.showAtLocation(cv, Gravity.NO_GRAVITY, mCurrentX, mCurrentY);
}
});
}
}`
манифеста
`<application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
<activity android:name=".MainActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:label="@string/app_name"
android:configChanges="orientation|screenSize"
android:windowSoftInputMode="adjustResize|stateAlwaysHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="PopupMainActivity"
android:label="@string/app_name"
android:theme="@style/Theme.FloatingWindow.Popup"
android:configChanges="orientation|screenSize"
android:windowSoftInputMode="adjustResize|stateAlwaysHidden"
android:clearTaskOnLaunch="true"
android:exported="true"
tools:ignore="ExportedActivity" />
</application>`
пожалуйста, помогите мне в этом. Я хочу реализовать компонент виджетов в целом. Благодаря!!
Спасибо за ответ, более подробную информацию о том, как пользоваться библиотекой, пожалуйста? Im, новый для android и изучение некоторых концепций, я могу нуждаться в дополнительной помощи! Благодаря! –
Проверьте проект примера библиотеки, особенно StandOutExampleActivity.java, SimpleWindow.java и AndroidManifest.xml –
@MostafaGazar, когда библиотека StandOut показывает CommingSoon? –