我想向我的ViewModel发送一个额外的参数,但这是从AndroidViewModel扩展的。如何将此参数添加到ViewModelFactory类?
视图模型
class ProjectViewModel(application: Application) : AndroidViewModel(application) {
// need a param for project id...
}
Run Code Online (Sandbox Code Playgroud)
ViewModelFactory
class ProjectViewModelFactory(val projectId: Int): ViewModelProvider.Factory {
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
// need to send this...
return ProjectViewModel(projectId) as T
}
}
Run Code Online (Sandbox Code Playgroud)
注意:我注意到在文档中它说:AndroidViewModel 子类必须具有一个接受Application作为唯一参数的构造函数。
所以我不知道做我想做的事是否可行(或很好)。
android android-viewmodel android-architecture-components android-jetpack
我已经在该网站上挖掘了一段时间,但无法找到解决我的问题的方法。我对网页抓取相当陌生,并试图使用漂亮的汤简单地从网页中提取一些链接。
url = "https://www.sofascore.com/pt/futebol/2018-09-18"
page = urlopen(url).read()
soup = BeautifulSoup(page, "lxml")
print(soup)
Run Code Online (Sandbox Code Playgroud)
在最基本的层面上,我要做的就是访问网站内的特定标签。我可以自己解决其余的问题,但我挣扎的部分是我正在寻找的标签不在输出中。
例如:使用内置的 find() 我可以获取以下 div 类标签: class="l__grid js-page-layout"
然而,我实际上要寻找的是嵌入在树中较低级别的标记的内容。
js-event-list-tournament-events
当我对较低级别的标签执行相同的查找操作时,我没有得到任何结果。
使用基于 Azure 的 Jupyter Notebook,我尝试了许多解决 stackoverflow 上类似问题的解决方案,但没有成功。
谢谢!肯尼
按照这个接受的答案,我能够得到tabLyout如下:
我现在需要的是能够根据片段位置更改按钮文本,例如,如果位置为零,则Back不应出现,如果位置是最后一个,Next则应替换为Done
我用过ViewPager.OnPageChangeListener但不适用于我,下面是完整的代码:
public class Slider extends AppCompatActivity {
private TabLayout tabLayout;
private ViewPager viewPager;
private Button leftBtn, rightBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.start_up);
leftBtn = (Button) findViewById(R.id.left_btn);
rightBtn= (Button) findViewById(R.id.right_btn);
viewPager = (ViewPager) findViewById(R.id.viewpager);
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabLayout);
tabLayout.setupWithViewPager(viewPager);
}
// This is not working, even the `Toast` not appearing
private ViewPager.OnPageChangeListener listener = new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, …Run Code Online (Sandbox Code Playgroud) 我有一些html包含一个带有一些tr行的表,每行都有一个包含img元素的td元素.在页面的其他地方,我有一个ajax方法,它将一个url发送到服务器,然后服务器在本地保存并返回该位置.
然后我尝试用新的url更新每个img元素的src属性元素,没有任何更新.我的调试警报调用显示找到图像元素并返回正确的位置,不知道我做错了什么.
HTML
<table class="edittable" id="ARTWORK_TABLE">
<tr>
<th class="tableheading verysmallinputfield" style="position:relative">
<label>
#
</label>
</th>
<th class="tableheading verysmallinputfield" style="position:relative">
<label>
Replace
</label>
</th>
<th class="tableheading verylargeinputfield" style="position:relative">
<label>
Filename
</label>
</th>
<th class="tableheading mediuminputfield" style="position:relative">
<label>
Artwork
</label>
</th>
</tr>
<tr id="menu_artwork1">
<td class="tableheading">
0
</td>
<td>
<input type="checkbox">
</td>
<td>
<label>
E:\Music\Tango in the Night\02 - Seven Wooooooonders.WAV
</label>
</td>
<td>
<img src="images/51sjc9qpk4oqFYZdroM04w==_thumbnail.jpg" width="32px" height="32px" title="600 x 585">
<label>
600 x …Run Code Online (Sandbox Code Playgroud) android ×2
android-architecture-components ×1
html ×1
image ×1
javascript ×1
python ×1
web-scraping ×1