我正在尝试遍历所有选项卡项以通过使用枚举的开关设置一些属性:
enum TabItems {
case FirstTab
case SecondTab
case ThirdTab
}
Run Code Online (Sandbox Code Playgroud)
这是我的循环:
for item in self.tabBar.items {
switch item.tag {
case .FirstTab:
println("first tab")
default:
println("tab not exists")
}
}
Run Code Online (Sandbox Code Playgroud)
有一个错误:Enum case 'FirstTab' not found in type 'Int!'.如何在此switch语句中正确使用enum?
我正在尝试ImageView在下图中制作一个圆角,但右下角。尝试使用背景形状,但它根本不起作用。Glide 加载的所有图像。我应该使用类似的东西ViewOutlineProvider吗?有没有一种有效的方法来做到这一点?谢谢!
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners
android:radius="2dp"
android:bottomRightRadius="20dp"
android:bottomLeftRadius="0dp"
android:topLeftRadius="0dp"
android:topRightRadius="0dp"/>
</shape>
Run Code Online (Sandbox Code Playgroud)
android android-shape android-shapedrawable material-components material-components-android
我正在使用Ionic和AngularJS开发应用程序.无法计算如何获得所选选项的值
调节器
.controller('TestCtrl', function($scope, $options) {
$scope.options = [
{ id: 0, label: '15', value: 15 },
{ id: 1, label: '30', value: 30 },
{ id: 2, label: '60', value: 60 }
]
$scope.countSelector = $scope.options[0];
$scope.changeCount = function(obj){
obj = JSON.parse(obj);
console.log(obj)
console.log(countSelector)
$options.set('productCountPerPageValue', obj.value);
$options.set('productCountPerPage', obj.id);
};
...
})
Run Code Online (Sandbox Code Playgroud)
模板
<ion-list ng-controller="TestCtrl">
<label class="item item-input item-select">
<div class="input-label">
{{countSelector}}
</div>
<select ng-model="countSelector" ng-change="changeCount('{{countSelector}}')" ng-options="opt as opt.label for opt in options">
</select>
</label>
</ion-list>
Run Code Online (Sandbox Code Playgroud)
console.log(obj)始终返回先前选择的值
console.log(countSelector)始终返回默认值(如果已设置)或未定义
我开始创建使用一个活动(导航抽屉)和许多片段的应用程序.但我无法使用工具栏后退按钮从片段导航回来.硬件后退按钮完美运行.我知道我需要覆盖onOptionsItemSelected,捕获android.R.id.home,检查后台堆栈中是否有东西而不是弹出它.更改片段后,"汉堡"按钮变为"后退箭头",但是当我点击它onOptionsItemSelected从未触发时,只需打开NavigationDrawer菜单.
这里来自活动的代码:
public class NavDrawerActivity extends AppCompatActivity implements ... {
NavigationView navigationView;
BottomNavigationView bottomNavigationView;
ActionBarDrawerToggle toggle;
FragmentManager fragmentManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_nav_drawer);
fragmentManager = getSupportFragmentManager();
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
final DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
// Set back button
fragmentManager.addOnBackStackChangedListener(new FragmentManager.OnBackStackChangedListener() {
@Override
public void onBackStackChanged() {
if (fragmentManager.getBackStackEntryCount() > 0) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
} else {
getSupportActionBar().setDisplayHomeAsUpEnabled(false); …Run Code Online (Sandbox Code Playgroud) 我有使用 JWT 令牌进行授权的 Spring Boot REST 应用程序。我想使用@AuthenticationPrincipal注释在控制器中获取当前登录的用户。但是,null如果我返回自定义模型loadUserByUsername并且 auth 停止工作,它总是会返回。我的模型实现了UserDetails.
我试图扩展org.springframework.security.core.userdetails.User但我摆脱了默认构造函数不存在的JWTAuthenticationFilter错误(ApplicationUser creds = new ObjectMapper().readValue(req.getInputStream(), ApplicationUser.class);)
怎么了?
UserDetailsServiceImpl.java
@Service
public class UserDetailsServiceImpl implements UserDetailsService {
private UserRepository userRepository;
public UserDetailsServiceImpl(UserRepository userRepository) {
this.userRepository = userRepository;
}
@Override
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
ApplicationUser applicationUser = userRepository.findByUsername(username);
if (applicationUser == null) throw new UsernameNotFoundException(username);
return applicationUser;
}
}
Run Code Online (Sandbox Code Playgroud)
ApplicationUser.java(模型)
@Entity
@Table(name = "users")
public class ApplicationUser …Run Code Online (Sandbox Code Playgroud) 这里是下载3个文件的代码,并用它做一些事情.但在启动Thread2之前,它会一直等到Thread1完成.如何让他们一起跑?使用注释指定一些示例.谢谢
import threading
import urllib.request
def testForThread1():
print('[Thread1]::Started')
resp = urllib.request.urlopen('http://192.168.85.16/SOME_FILE')
data = resp.read()
# Do something with it
return 'ok'
def testForThread2():
print('[Thread2]::Started')
resp = urllib.request.urlopen('http://192.168.85.10/SOME_FILE')
data = resp.read()
# Do something with it
return 'ok'
if __name__ == "__main__":
t1 = threading.Thread(name="Hello1", target=testForThread1())
t1.start()
t2 = threading.Thread(name="Hello2", target=testForThread2())
t2.start()
print(threading.enumerate())
t1.join()
t2.join()
exit(0)
Run Code Online (Sandbox Code Playgroud) android ×2
angularjs ×1
enums ×1
java ×1
javascript ×1
jwt ×1
material-components-android ×1
python ×1
spring ×1
swift ×1