我的应用程序中有一个简单的 Room 实现,但在构建应用程序时遇到了 Dao 和 RoomDatabase 类的问题(构建失败)。
\nDao 类是“NoteDao”
\n@Dao\ninterface NoteDao {\n\n @Query("SELECT * FROM notes")\n suspend fun getAllNotes(): List<Note>\n\n @Query("SELECT * FROM notes WHERE uid = :uid")\n suspend fun getNoteByUid(uid: Int): Note\n\n @Insert(onConflict = OnConflictStrategy.REPLACE)\n suspend fun insertNote(note: Note): Long\n\n @Delete\n suspend fun deleteNote(note: Note): Int\n}\n
Run Code Online (Sandbox Code Playgroud)\n房间数据库类
\n @Database(\n entities = [Note::class],\n version = 1,\n exportSchema = false\n )\n abstract class AppDatabase : RoomDatabase() {\n\n abstract fun noteDao() : NoteDao\n\n companion object {\n\n @Volatile …
Run Code Online (Sandbox Code Playgroud)我的应用需要添加用户名才能正常运行.mainActivity在顶部显示它从数据库中检索的用户名.mainActivity还有一个按钮,通过startActivityForResult()方法导致'addusername'活动; 当用户实际输入用户名时,只有主活动上的用户名才会刷新并显示."addusername"活动上有一个提交按钮,用于添加用户名,setResult(RESULT_OK);
如果通过单击"addusername"按钮输入用户名,则Everything正常工作.
现在,我在mainActivity中添加了一个对话框,只有在数据库中没有用户名时才会启动应用程序.对话框提供了添加用户名的选项,如果单击该用户名,则会导致"addusername"活动.但按下"提交"按钮后,mainActivity会被调用,但用户名不会刷新(但数据库确实会更新)
以下是"addusername"活动的代码:
public void submitusername(View view) {
userdatabase name = new userdatabase(this);
name.open();
String user = name.getusername();
name.close();
EditText cinone = (EditText) findViewById(R.id.username);
username = cinone.getText().toString();
if(user.equals("")) {
userdatabase entry = new userdatabase(Editprofile.this);
entry.open();
entry.createEntry(username, null, null, null);
entry.close();
Context context = getApplicationContext();
CharSequence text = "Added new user!";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
else {
userdatabase update = new userdatabase(Editprofile.this);
update.open();
update.updateUsername(username);
update.close();
Context context = getApplicationContext();
CharSequence …
Run Code Online (Sandbox Code Playgroud) 我有一个Fragment A
导航到Fragment B
Fragment B
主机 a ViewPager2
.
ViewPager2
里面有两个膨胀的碎片 -Fragment C
和Fragment D
。
单击 中的项目后,Fragment C
我想导航到Fragment D
之上的新实例Fragment B
。
目前,我的代码是这样的 -
findNavController().navigate(
R.id.action_FragmentC_to_FragmentD,
bundleOf("id" to id, "type" to "list")
)
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试导航时,出现以下异常 -
java.lang.IllegalArgumentException: Navigation action/destination com.test.at:id/action_FragmentC_to_FragmentD cannot be found from the current destination Destination(com.krtkush.audiotime:id/FragmentB) label=FragmentB
Run Code Online (Sandbox Code Playgroud)
据我所知,导航组件仍然处于打开状态Fragment B
,但我正在尝试导航到Fragment D
from Fragment C
,因此它引发了异常。
我(认为)可以通过添加一个侦听器来解决此问题,该侦听器会通知Fragment B
何时点击该项目 Fragment C
,然后导航到Fragment D
from Fragment B …
android android-fragments android-viewpager android-navigation android-architecture-navigation
我的应用程序应该有一个Datepicker.要调用日期选择器片段,按下一个按钮,然后出现浮动日期选择器.我的问题是该按钮看起来与用于接受数据的其他UI组件不相似.有什么办法可以让按钮外观和功能像谷歌日历应用程序中的那样?日期选择器按钮动态显示所选日期,并希望也具有该功能.
精选参考:
我当前的按钮:
我想要实现的按钮类型:
android android-datepicker android-layout android-button android-calendar
我希望我的应用程序只显示Facebook页面发布的帖子,而无需任何身份验证.这是代码:
public class Main extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
String APP_ID = "1234567890";
String APP_SECRET = "1a2b3c4defghijk";
String OWNER_OF_FEED = "somepage";
HttpClient client = new DefaultHttpClient();
HttpGet get = new HttpGet(
"https://graph.facebook.com/oauth/access_token?client_id="+
APP_ID +
"&client_secret="+APP_SECRET+"&grant_type=client_credentials");
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String access_token = client.execute(get, responseHandler);
String uri = "https://graph.facebook.com/" + OWNER_OF_FEED + "/feed?"
+ access_token;
get = new HttpGet(uri);
String responseBody = client.execute(get, responseHandler);
// responseBody contains JSON-encoded feed
//textview.setText(responseBody);
TextView txtv …
Run Code Online (Sandbox Code Playgroud) 当我按下活动上的按钮时,将调用我的DialogFragment类.我希望通过此DialogFragment设置的日期显示在按钮文本上.FindViewById拒绝被类识别.
我发现了一个类似的问题,但我无法将其与我的案例联系起来.
码:
调用Dialogue片段的按钮:
public void datepicker(View v) {
DialogFragment newFragment = new DatePickerFragment();
newFragment.show(getFragmentManager(), "datePicker");
}
Run Code Online (Sandbox Code Playgroud)对话片段代码:
public class DatePickerFragment extends DialogFragment implements
DatePickerDialog.OnDateSetListener {
@Override
public Dialog onCreateDialog(Bundle savedInstanceSateate) {
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
return new DatePickerDialog(getActivity(), this, year, month, day);
}
public void onDateSet(DatePicker view, int year, int month, int day) {
// Do something with the date chosen
}
}
}
Run Code Online (Sandbox Code Playgroud)即使我已经实现了上述方法close(),Eclipse也向我显示了上述错误.
这是代码:
public void update_project(View view) {
EditText cinone = (EditText) findViewById(R.id.pname);
pname = cinone.getText().toString();
String fDate = pday + ". " + pmonth + ". " + pyear;
projectdatabase dbupdate = new projectdatabase(UpdateProject.this);
dbupdate.open();
dbupdate.updateProject(id, pname, fDate);
dbupdate.close();
}
Run Code Online (Sandbox Code Playgroud)
logcat的:
12-31 22:05:51.114: E/SQLiteDatabase(4180): close() was never explicitly called on
database '/data/data/com.kk.project/databases/project_db'
12-31 22:05:51.114: E/SQLiteDatabase(4180):
android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the
cursor or database object that was opened here
12-31 22:05:51.114: E/SQLiteDatabase(4180): at
android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
12-31 22:05:51.114: E/SQLiteDatabase(4180): at
android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
12-31 …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将 Spring Security 实现到 POST API -
http?.authorizeRequests()
?.antMatchers(HttpMethod.POST, "/user/details")?.permitAll()
?.antMatchers("/user/**")?.hasRole("admin")
?.and()
?.formLogin()
Run Code Online (Sandbox Code Playgroud)
但是,permitAll()
似乎不起作用。但是,如果我替换HttpMethod.POST
为HttpMethod.GET
,则其下的 GET 请求将遵循antMatcher
预期的规则。
POST 请求有不同的方式吗?
我正在制作一个软件作为个人项目.该软件旨在表现为个人日记,必须存储大量文本和数字.到目前为止,它不会以任何方式连接到互联网.
我的问题是 - 我是否需要基于SQL等的数据库或通过C/C++进行简单的文件处理?
我正在尝试使用JavaScript,我的浏览器拒绝执行我使用switch case函数编写的程序.目标是找到一个字符串中的元音数量(考虑所有都以小写字母输入)
当我点击"提交"按钮时,框中的文字消失但没有任何反应.警报"你好"也没有出现,所以我假设该功能甚至没有被执行.
<html>
<head>
<script>
function vow(form)
{
alert("hello");
var a = new Array(10);
a = form.t1.value;
var flag = 0;
var i;
for(i=0;i<10;i++)
{
switch (a[i])
{
case 'a':
flag++;
break;
case 'e':
flag++;
break;
case 'i';
flag++;
break;
case 'o';
flag++;
break;
case 'u';
flag++;
break;
}
}
alert(flag);
}
</script>
</head>
<body>
<form>
<input type="text" name="t1">
<input type="submit" value="SUBMIT" onClick="vow(this.form)"/>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) android ×7
android-architecture-navigation ×1
android-room ×1
database ×1
facebook ×1
java ×1
javascript ×1
spring-boot ×1